我有一个包含值映射的JSON对象。这些映射项的键是预定义的。我使用ng-repeat
为每个地图项创建一个按钮,并通过ng-click
将该项传递给该方法。
要执行某个调用,我现在需要项目的密钥。如何获取给定项目的密钥?
JSON看起来像
"map": {
"0": {
"id": 1,
"value": "123",
},
"1": {
"id": 5,
"value": "567",
}
}
。.html
<div ng-repeat="item in object.map">
<button ng-click="load(item)" type="button">A</button>
</div>
应用.js
$scope.load= function(item) {
// HOW TO GET THE KEY OF THE GIVEN MAP ITEM
};
您可以使用以下语法循环访问此对象的属性,获取(key, item)
对:
<div ng-repeat="(key, item) in object.map">
<button ng-click="load(key, item)" type="button">A</button>
</div>
通过这种方式,您可以将项的key
传递给load
函数。在此链接中,您可以找到有关此语法的更多详细信息ng-repeat
。
这可能会对您有所帮助。
<div ng-repeat="(key, value) in object.map">
<button ng-click="load(key,value)" type="button">A</button>
</div>
您可以使用的另一种方法是将对象放入控制器并使用Object.keys(objname(访问控制键。
app.js 看起来会像这样令人作呕:
$scope.load= function(item) {
let key = Object.keys(item);
};