Доступ к параметрам объекта в AngularJS - PullRequest
0 голосов
/ 07 мая 2018

Имея такую ​​структуру объекта:

anObject = {
    "name_0" : [{info: "xxx", id: 1}],
    "name_1" : [{info: "aaa", id: 4}],
    "name_2" : [{info: "bbb", id: 6}],
    ... 
};

итак, ключом является name_[i], а значением является массив, содержащий некоторые данные.

Я хочу напечатать данные как:

key
- value
key
- value
- value

(может быть более одного массива для ключа). Поэтому я использую два ng-repeat s:

<div ng-repeat="(key, value) in $ctrl.anObject">{{key}}
    <div ng-repeat="x in value">-  {{x}}
</div>  

код выше показывает их правильно, но я хочу иметь возможность вместо всего массива показывать только идентификатор, например:

key
- value.id
key
- value.id
- value.id

Я пытался вот так, но он помещает данные так же, как и в предыдущей версии.

<div ng-repeat="(key, value) in $ctrl.anObject">{{key}}
    <div ng-repeat="x in value">-  {{x.id}}
</div>  

Есть предложения?

1 Ответ

0 голосов
/ 07 мая 2018

Попробуйте это

var app  = angular.module('app', []);
app.controller('ctrl', function($scope){

$scope.anObject = {
    "name_0" : [{info: "xxx", id: 1}],
    "name_1" : [{info: "aaa", id: 4}],
    "name_2" : [{info: "bbb", id: 6}],
      
};
})
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.min.js"></script>
<div ng-app='app' ng-controller='ctrl'>
<div ng-repeat="(key, value) in anObject">{{key}}
    <div ng-repeat="x in value">-  {{x.id}}
</div> 

</div>
...