gpt4 book ai didi

angularjs - 如何在angularjs中等待响应

转载 作者:可可西里 更新时间:2023-11-01 16:13:44 25 4
gpt4 key购买 nike

我正在做的是将过滤器放在表上(包含记录)。当我输入搜索框(使用 http get 方法)时,表数据会根据搜索框进行更新。但是,当我输入速度非常快时,我会在控制台中看到 500 内部服务器错误。

主要问题是在收到上一个响应之前,我正在触发下一个请求。结果没有问题。只是控制台显示每个 http 请求。如果在搜索框中快速输入,它会变成红色

解决方案是什么?

最佳答案

你可以控制你的搜索输入:

var app = angular.module('app', []);

app.controller('TableController', function($scope, $http, $timeout) {
$http.get('yourTableData.json').then(function(result){
$scope.rows = result.data;
});

$scope.filterText = '';

var temp = '',
filterTextTimeout;
$scope.$watch('searchText', function (val) {
if (filterTextTimeout){
$timeout.cancel(filterTextTimeout);
}
temp = val;
filterTextTimeout = $timeout(function() {
$scope.filterText = temp;
$http.get($scope.filterText).then(function(result){
$scope.rows = result;
}
}, 250);
})
});

<input id="searchInput" type="search" placeholder="search field" ng-model="searchText" />
<div class="record" ng-repeat="row in rows | filter:filterText">
<span>{{row.content}}</span>
</div>

关于angularjs - 如何在angularjs中等待响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31268395/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com