需要在我的表

时间:2016-12-21 14:12:38

标签: angularjs

我在控制器中获取数据如下  $ 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)

任何人都可以帮助我吗?

3 个答案:

答案 0 :(得分:1)

你的ng-repeat中的

只需添加一行

ng-repeat="data in dataset track by $index"

如果数据集中有重复值,则会出现此错误。

答案 1 :(得分:0)

首先,他们不需要将数据解析为json。默认情况下,angular仅将数据用作Json。

所以,只需删除

即可
$scope.healthData = response.data;

Json解析数据。

通过查看错误..我的感觉是......数组包含重复值。如果使用trackby将某个其他字段用作ng-repeat中的键。

粘贴ng-repeatArray的完整代码以解决确切问题。

答案 2 :(得分:0)

您的数据中有重复的对象(具有相同的内容)添加到ng-repeat track by $index或添加track by record.id