我在控制器中获取数据如下 $ scope.healthData = []; //声明一个空数组
$scope.init = function(){
console.log("before function");
$http({
method: 'GET',
url: ''
}).then(function successCallback(response) {
$scope.healthData = angular.toJson(response.data);
}, function errorCallback(response) {
alert("Trouble grabbing requested data.")
});
}
我试图在我的jsp页面中显示我的数据,如下所示: {{x.name}}
<td>{{ x.componentStatus }}</td>
但我在控制台中遇到以下错误: 错误:[ngRepeat:dupes] http://errors.angularjs.org/1.5.8/ngRepeat/dupes?p0=x%20in%20healthData&p1=string%3A%22&p2=%22 在angular.min.js:6
at XMLHttpRequest.t.onload (angular.min.js:103)
任何人都可以帮助我吗?
答案 0 :(得分:1)
只需添加一行
ng-repeat="data in dataset track by $index"
如果数据集中有重复值,则会出现此错误。
答案 1 :(得分:0)
首先,他们不需要将数据解析为json。默认情况下,angular仅将数据用作Json。
所以,只需删除
即可$scope.healthData = response.data;
Json解析数据。
通过查看错误..我的感觉是......数组包含重复值。如果使用trackby
将某个其他字段用作ng-repeat
中的键。
粘贴ng-repeat
和Array
的完整代码以解决确切问题。
答案 2 :(得分:0)
您的数据中有重复的对象(具有相同的内容)添加到ng-repeat track by $index
或添加track by record.id