所以我有一个带有我的对象数组的scope.data。该数组的数据显示在一个表中,并且它是orderedBy x属性。表中的显示效果很好但是scope.data对象的self不会被排序以反映表中显示的内容...有没有办法让该对象也排序为排序选项?
答案 0 :(得分:3)
OrderBy不对作用域的变量进行排序,而是对其显示方式进行排序。如果您希望在$ scope中更改数组,则需要在javascript中对数组进行排序。
答案 1 :(得分:3)
您可以在控制器中应用过滤器,而不是将过滤器应用于模板中的scope.data:
而不是:
控制器:
$scope.data = [data array];
模板:
{{ data | orderBy:x }}
更改为:
控制器:
// Inject $filter into controller
$scope.data = $filter('orderBy')('x');
模板:
{{ data }}
数据绑定:
如果传入了data
数组,则可以通过设置监视功能来检查原始数组是否更改,然后自动应用于当前的$ scope.data属性来处理更新。