【发布时间】:2014-03-03 08:22:25
【问题描述】:
尝试使用 Angular js 实现搜索字段。
每次输入值发生变化时,都会调用一个方法来获取查询结果。
但是它非常慢,因为对于每个字符,它都会调用一次该方法。我的输入搜索框如下
<input type="text" name="term" ng-model="term" ng-change="run_filter()"/>
我的功能
$scope.do_filter = function() {
$scope.items = [];
var canceler;
term = $scope.term;
if (canceler) canceler.resolve();
canceler = $q.defer();
$http({
method: 'GET',
url: '/search/do_search',
params: {
term: term
},
timeout: canceler.promise
}).success(function(result) {
if (result.items != null) {
$scope.items = result.items;
$scope.success = true;
} else {
$scope.success = false;
}
$scope.loading = false;
});
}
但它似乎不起作用。我看网络的时候,提交第二个请求的时候,第一个请求没有被取消。
提前感谢您的帮助。
【问题讨论】:
标签: angularjs