为了提高性能,我修改了以下代码逻辑:
修改前
该代码在过滤大量数据(约2000或更多)时性能非常低。
<tr ng-repeat="item in ctrl.filteredReport = (ctrl.updatedData |
filter:ctrl.filterByQuarter:strict | filter:searchText)">
修改后
这段代码显著提高了性能。
<tr ng-repeat="item in ctrl.updatedData"
ng-show="([item] | filter:ctrl.filterByQuarter | filter:ctrl.searchText).length > 0">
问题
修改之后,问题是我无法获取表格中显示的已过滤报告的长度
。
在修改之前,我可以通过 ctrl.filteredReport.length
获取已过滤报告的长度。
仅供参考
我已经尝试过 track by
,但性能并没有像ng-show
那样提高。
如果需要更多信息来使问题更清晰,请让我知道。