【发布时间】:2013-11-16 01:54:22
【问题描述】:
我有一个大数据列表(4000 多个项目)。开始输入时 - 我的浏览器冻结(最多 15 秒)。所以我需要关闭自动过滤功能,并将过滤功能绑定到按钮点击。 通过谷歌寻找答案没有结果。我该怎么做?请帮帮我:)
代码:
<input ng-model="search.phone" type="text" placeholder="Телефон...">
<input ng-model="search.name" type="text" placeholder="Имя...">
<input ng-model="search.city" type="text" placeholder="Город...">
<div ng-repeat="user in users | filter:search" class="user_block" ng-include src="userTemplate"></div>
和控制器:
app.controller("smsCtrl", ['$scope', 'smsData', 'createDialog', '$http', '$filter', function($scope, smsData, createDialog, $http, $filter){...}
【问题讨论】:
-
你能发布你的代码吗?我过滤了大约 150k 个对象,花了我 4-6 秒。顺便说一句,你可以实现加载器
-
你是什么意思“自动过滤”,你如何过滤你的项目
-
还告诉我们您显示的每个项目有多少数据?如果每个数组项有许多数据绑定字段,则列表的呈现可能会导致性能问题。
-
@MaximShoustin 添加代码。
-
@jason 我的意思是在我开始在输入中输入内容后立即开始搜索。
标签: javascript angularjs filtering