Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 角度JS中过滤数据的惯用方法_Javascript_Angularjs - Fatal编程技术网

Javascript 角度JS中过滤数据的惯用方法

Javascript 角度JS中过滤数据的惯用方法,javascript,angularjs,Javascript,Angularjs,我收集了一些数据,使用ng repeat指令显示: myApp.controller("MyCtrl", function ($scope) { $scope.products = [...]; // data from server }); <tr ng-repeat="product in products"> <td>{{product.name}}</td> <td>{{product.price}}</td>

我收集了一些数据,使用ng repeat指令显示:

myApp.controller("MyCtrl", function ($scope) {
    $scope.products = [...]; // data from server
});

<tr ng-repeat="product in products">
  <td>{{product.name}}</td>
  <td>{{product.price}}</td>
</tr>

但我认为这是一个丑陋的解决方案。我觉得更好的方法是定义自定义过滤器,但现在我不知道新过滤器应该是什么样子。那么,完成我的任务的惯用/更好的方法是什么?

不适合你吗?正如你提到的,制作一个自定义过滤器@RobertHarvey@Patrick Reck是的,但问题是我不知道如何通知filter inside ng repeat=products中的product | myFilter单击了哪个按钮。@IlyaIvanov filterCriteria将来自何处?@WelcomeTo来自范围
myApp.controller("MyCtrl", function ($scope) {
    $scope.products = [...]; // data from server

    $scope.showNewest = function() {
        // here modify the  $scope.products  varialbe so changes will be reflected in UI
    }
});