contidional orderBy only on init AngularJS
问题 How can I run orderBy filter only once when my view is initialized? I don't want my list to be reordered during runtime. <li ng-repeat="service in quote.services | orderBy:'index'" ></li> 回答1: Use the orderBy as a filter in your controller instead: app.controller('DemoCtrl', ['$scope', '$filter', function($scope, $filter){ $scope.quote.services = $filter('orderBy')($scope.quote.services, 'index'); }]); See the filter docs for all the options. 来源: https://stackoverflow.com/questions/35615976