我有一些数据集合,我使用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>
我还有一些过滤按钮:"Newest"
,"Popular"
等。
我希望在点击此按钮时过滤我的数据。
目前我认为我可以为控制器中的每个按钮定义单独的事件处理程序,并以编程方式过滤products
变量:
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
}
});
但我认为这是一个丑陋的解决方案。我觉得更好的方法是定义自定义过滤器,但现在我还没有任何想法新过滤器的外观。那么什么是完成任务的惯用/更好的方法呢?