2016-01-12 2 views
0
<li ng-repeat="(key,val) in names" > 
{{val.name}} 
< /li> 

при использовании нг-повтор значения становятся неправдоподобными, и когда я пытаюсь обновить значения не могут быть вставлены и я получаю следующее сообщение об ошибке в ресурсах.ngRepeat: Дублированный ключ обманывает в Repeater

[{"name":"a","$$hashKey":"object:3"},{"name":"b","$$hashKey":"object:4"},{"name":"c","$$hashKey":"object:5"},{"name":"c","$$hashKey":"object:6"},{"name":"c","$$hashKey":"object:12"},{"name":"c","$$hashKey":"object:14"},{"name":"c"}] 

ответ

0

Вы говорите своему ngRepeat перебирать ключи от объекта, но то, что у вас есть список/массив. Таким образом, изменение в:

<div ng-repeat="val in names"> 
    {{val.name}} 
</div> 
+0

моя структура массива подобна этой переменной $ scope.names.push ({'name': $ sc ope.name}); – balaji

+0

Решено ли решение? –

+0

жаль, что он не работает – balaji

1

попробовать этот

<form> 
<input type="text" ng-model="name"/> 
<button ng-click="pushData()">Click me</button> 
</form> 
<div ng-repeat="values in names track by $index"> 
{{values.name}} 
</div> 

контроллер

$scope.names = []; 
$scope.pushData = function(){ 
$scope.names.push({'name':$scope.name});  
} 
+0

вывод: abccccc –

+0

теперь попробуйте обновить и снова введите тот же data – balaji

+0

отображает все значения имен, представленные в $ scope.names = [{"name": "a", "$$ hashKey": "object: 3"}, {"name": "b", "$$ hashKey ":" объект: 4 "}, {" имя ":" с " "$$ hashKey": "объект: 5"}, { "имя": "с", "$$ hashKey":" объект: 6 "}, {" имя ":" с " "$$ hashKey": "объект: 12"}, { "имя": "с", "$$ hashKey": "объект: 14"}, {" имя ":" с "}, {" имя ":" с», "$$ hashKey": "объект: 12"}, { "имя": "с", "$$ hashKey": "объект: 14"} , {"name": "c"}]. –

0

вы должны сгруппировать элементы по ихнего имени не иметь дубликаты, пожалуйста, попробуйте это один

<li ng-repeat="val in names | groupBy: val.name" > 
    {{val.name}} 
< /li> 
+0

Ошибка: $ injector: unpr Неизвестный провайдер Неизвестный поставщик: groupByFilterProvider <- groupByFilter – balaji

+0

попробуйте это - | groupBy: 'name' –

+0

в случае возникновения каких-либо дополнительных проблем с фильтром groupBy, проверьте, включили ли вы параметр angular.filter в своем приложении, также посетите эту ссылку - http://stackoverflow.com/questions/31338447/unknown- поставщик-groupbyfilterprovider-groupbyfilter –

Смежные вопросы