我有以下JS对象:
var test = {
"John": {"grade": "A", "age": 18},
"Jack": {"grade": "B", "age": 19},
"Jill": {"grade": "C", "age": 18},
// ...
}
我知道在涉及数组时如何使用ngRepeat
,即
ng-repeat="(key, value) in test"
但是当我有一个对象时,有没有办法使用ngRepeat
?
答案 0 :(得分:2)
您只需要为ng-repeat添加另一个级别:
<div ng-repeat="(name, personInfo) in test">
<span>{{name}}</span>
<div ng-repeat="(key, value) in personInfo">
<label>{{key}}</label>
<span>{{value}}</span>
</div>
</div>
答案 1 :(得分:0)
如果所有其他方法都失败了,你可以做一个严格的数组。但是这不能正常工作吗?如果不是,也许这个。未经测试。
// array from obj, then do your thing.
var students = Object.keys(test).map(function (key) {return test[key]});
答案 2 :(得分:-1)
Ng重复在数组上进行交互,因此对于这个对象它不是很有用....但你可以使用:
$ scope.students = Object.keys(test)
然后与学生互动