AngularJS Angular orderby Chrome 乱序问题

wikimo · 2015年11月09日 · 最后由 wikimo 回复于 2015年11月09日 · 7508 次阅读

问题描述

ng-repeat items 时通过 orderBy:predicate:reverse 进行了排序,代码如下,实现的效果是,table 记录列表,点击展开详情,思路是,在点击后,对当前数组的某个索引位置做插入详情对象,在 firefox 中是正常的,chrome 下部分顺序正常,部分错乱。

<tr ng-repeat="item in data.items | orderBy:predicate:reverse | filter:query " ng-include="item.is_query ? 'views/user/query.show.html':'views/user/query.item.html'" ng-class="item.enquStat == 20 ? 'item-expired':'' "></tr>

排查过程

在 controller 中,对$scope.data.items 进行了顺序打印,发现数组顺序是正确的,不过这应该是在 view 没有进行 orderBy 之前;

搜索了 chrome js sort,得到了以下信息 http://www.cnblogs.com/yzeng/p/3949182.html

解法推测

自己重新写一个排序方法么,也就是重写 orderBy,还是有别的更好的方案,不知上下文信息是否足够多

@nightire 请教下,是否遇到过,谢谢!

需要 登录 后方可回复, 如果你还没有账号请 注册新账号