gpt4 book ai didi

javascript - 列出 (Angular.js) 中的对象

转载 作者:行者123 更新时间:2023-11-27 23:31:30 26 4
gpt4 key购买 nike

我正在生成一个列表来搜索键“名称”和“类型”。

results.push({ name: item.beast, type: 'color of animal' });

但我在查找数组 $scope.data 中包含的元素时看到此错误:

Error: [$ rootScope: infdig] $ 10 digest () iterations reached. Aborting! Watchers fired in the last five iterations.

这是我的代码:

http://plnkr.co/edit/EDd578?p=preview

最佳答案

这里的问题是,您正在使用一组数据进行过滤,但试图以不同的格式显示该过滤过程的结果数据集。我建议在输入上使用 ng-change 并使用新的数据集来填充重复的项目。

Controller

$scope.matches = [];

$scope.findMatches = function(items, searchText) {
var results = [];
if (searchText) {
angular.forEach(items, function(item) {
if (item.beast.indexOf(searchText) === 0) {
results.push({
name: item.beast,
type: 'animal'
});
}

if (item.color.indexOf(searchText) === 0) {
results.push({
name: item.color,
type: 'color of animal'
});
}
});
}

return results;
}

html

<input type='text' ng-model='search' id='search' ng-change="matches = findMatches(data, search)">
<hr/>

<ul>
<li ng-repeat="item in matches track by $index">{{item.name}} and {{item.type}}</li>
</ul>

plunkr - http://plnkr.co/edit/hkMXPP?p=preview

关于javascript - 列出 (Angular.js) 中的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34541021/

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