gpt4 book ai didi

javascript - 如何在第一次运行时更新回调 View

转载 作者:行者123 更新时间:2023-11-28 08:18:56 25 4
gpt4 key购买 nike

我想在页面加载时从服务获取搜索结果。要更新 View ,我只需从回调中调用 $apply 一次,以避免 Error: [$rootScope:inprog]。我尝试了 ng-init,但似乎它没有调用摘要循环。有更好的方法吗?处理回调的方法是什么?

代码:

<input autocomplete="off" autocorrect="off" ng-keyup="search()" ng-model="query" spellcheck="false" type="text">

和js

.controller('HomeCtrl', function ($scope, Contacts) {
$scope.hits = [];
$scope.query = '';
$scope.initRun = true;
$scope.search = function() {
Contacts.search($scope.query, function(success, content) {
if (!success || $scope.query != content.query) {
return;
}
$scope.hits = content.hits;
if ($scope.initRun){
$scope.$apply();
$scope.initRun = false;
}
});
};
$scope.search();
});

现场演示 http://lukasz-madon.github.io/algolia-angular-example/#/

最佳答案

只是一个建议,而不是使用 $scope.$apply() 尝试使用 $scope.$apply(function(){ 'digest loop' });这是更合适的做法。

关于javascript - 如何在第一次运行时更新回调 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23243721/

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