对于每对键值对,显示键下的值



有一个对象具有以下形式:

anObject = {name_1 : [4], 
name_2 : [1], 
name_3 : [5, 1, 2], 
name_4 : [3, 4],  
};

左侧是属性的名称,右侧是数值数组(一个或多个值(。

我想以某种方式向他们展示:

name_1 
- 4
name_2
- 1
name_3 
- 5
- 1
name_4
- 3 
- 4

我可以使用ng-repeatname_进行打印,如下所示:

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

我还可以显示这样的数值:

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

但我想把它们放在钥匙下面。可能吗?

您拉出的value是一个数组,因此请用第二个ng-repeat显示它。下面是一个示例:

var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.anObject = {
name_1: [4],
name_2: [1],
name_3: [5, 1, 2],
name_4: [3, 4],
};
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js"></script>
<div ng-app="myApp" ng-controller="myCtrl">
<div ng-repeat="(key, value) in anObject">
{{key}}
<div ng-repeat="x in value">
- {{x}}
</div>
</div>
</div>

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js"></script>
<body ng-app="myApp" ng-controller="myCtrl">
<div ng-repeat="(key, value) in records">{{key}}
<div >{{value.toString()}}</div>
</div>
<script>
var app = angular.module("myApp", []);
app.controller("myCtrl", function($scope) {
$scope.records = {
"key":[1],
"key2":[1,2],
"key3":[1,2,3]
}
});
</script>

最新更新