我有一个json对象数组
$scope.arrary = [{"a":"value"},{"b":"value2"},{"c":"value3"}];
$scope.secondObje = {"a":"this is updated value","b":"this is new value"}
我可以使用
遍历'array'<div ng-repeat="(key,value) in array">
现在如何使用键
访问第二个对象的值我想要像{{secondObje.key}}
这样的东西,我怎样才能在角度上做到这一点。
这样我就可以打印"this is updated value"
和"this is new value"
。
请帮帮我。
答案 0 :(得分:10)
您的代码失败,因为$scope.arrary
是一个数组,因此key
中的<div ng-repeat="(key,value) in arrary">
为您提供从0开始的索引(即0,1,2)而不是字母(a,b) ,c)你想要的。
选项1:
解决此问题的一种方法是更改$scope.arrary
的格式,以便您拥有
$scope.arrary = [{"key":"a", "value":"value"},{"key":"b", "value":"value2"},{"key":"c", "value":"value3"}];
然后,您可以使用第二个对象上的键作为
<div ng-repeat="a in arrary">
{{ secondObje[a.key] }} <br>
</div>
选项2:
但是,如果您想保持$scope.arrary
的方式,可以使用第二个对象上的键作为
<div ng-repeat="a in arrary">
<div ng-repeat="(key, value) in a">
{{ secondObje[key] }} <br>
</div>
</div>
以下是这些的工作演示:http://jsfiddle.net/5NzZX/119/
我更喜欢第一种选择。