保存和加载用户过滤器时如何避开有状态过滤器

时间:2018-06-26 10:26:14

标签: javascript angularjs angularjs-ng-repeat angular-filters

我有一个记录列表,并通过从下拉列表中选择一个数字来限制显示的记录数。当用户更改下拉列表时,过滤器可以正常工作。

  $scope.recordNumbers = [
        "10", "50", "100", "500", "1000", "10000"
    ];

    $scope.filterGroup.selectedRecordNumber = "10"

<div data-ng-repeat="item in items | limitTo:filterGroup.selectedRecordNumber track by item.Id">
{{item.Id}}
</div>

但是,用户可以保存和加载过滤器。当我加载筛选器并在控制器中更改$ scope.filterGroup.selectedRecordNumber时,下拉值会更改,但记录上的筛选器不会执行。

我看过一些文章,它们指向创建有状态的过滤器来解决此问题,但是由于性能问题,不建议使用它们。还有其他解决方法吗?也许会触发控制器触发下拉菜单的onchanged事件,但是我不确定如果没有用户在下拉菜单上的交互,该怎么做。

0 个答案:

没有答案