gpt4 book ai didi

javascript - $scope 更改后 ng-repeat 不会第二次触发

转载 作者:行者123 更新时间:2023-11-28 02:54:03 25 4
gpt4 key购买 nike

我是 Angular 的新手,我正在尝试创建一种过滤机制,在输入字母时触发搜索,查找数据库并返回结果。

结果从数据库返回正常,但我遇到的问题是当我用结果填充范围数组时,ng-repeat 没有触发。

我的 HTML 和 JS:

    app.controller("friendsController",function($scope,$http){
$scope.results =[];
$scope.onTextChange = function (){
var results = [];
var text = $scope.friendsLookupText;
$http({
url: 'utilities/getFriendsByValue.php',
method: 'POST',
data: {textValue: text}
}).success(function(data) {
if(data=="none")
{
$scope.results = results;
}
else
{
var stringResult = JSON.stringify(data);
var parsedResult = JSON.parse(stringResult);
$scope.results = parsedResult;
}
});

};
});
<div class="container-fluid" ng-controller="friendsController as friendsCtrl">
<input type="text" id="friendsLookupText" ng-model="friendsLookupText" ng-change="onTextChange()">
<ul class="list-group">
<div class="" ng-repeat="result in $scope.results">
<li class="list-group-item">{{result.username}}</li>
</div>
</ul>
</div>

如果有人能提供帮助,我会很高兴。

最佳答案

从 View 中的重复中删除 $scope,仅使用 results

<div class="" ng-repeat="result in results">
<li class="list-group-item">{{result.username}}</li>
</div>

关于javascript - $scope 更改后 ng-repeat 不会第二次触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38055810/

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