0

在我的应用程序中,我正在迭代一个数组,其值绑定到文本框(基本上输入类型 =“数字”)。IE,

说,

<div ng-repeat="number in numbers|orderBy:'value'">
     <input type="number" ng-model="number.value">
</div>  

这个 Plnkr 链接 - http://plnkr.co/edit/?p=preview&s=D7hhm2al6sOXMHwQ

演示我在说什么。

因此,只要我更改文本框的值,就会重新排序。我不希望这种情况发生,因为它让我的用户不得不搜索他们刚刚编辑的框。我想要一个解决方案,在第一次创建dom时订购ng-repeat,但在重新创建它们之前不会再次订购。我怎样才能做到这一点?请帮忙。

4

1 回答 1

1

你可以通过在你的数组中排序一次来做到这一点,在这种情况下,controller通过注入 显然,$filter在您加载后执行此操作。$scope.numbers

.controller('myController', function($filter, $scope){
    $scope.numbers = $filter('orderBy')($scope.numbers, 'value')
})
于 2015-05-19T07:50:45.437 回答