Javascript 表格中的二维多级对象,具有ng重复
我有一个像这样的二维嵌套对象Javascript 表格中的二维多级对象,具有ng重复,javascript,html,angularjs,angularjs-ng-repeat,Javascript,Html,Angularjs,Angularjs Ng Repeat,我有一个像这样的二维嵌套对象 $scope.analysisDataNew = [ { "data":{ "row1":{ "col1":{ "subCol1": 10, "subCol2": 10, }, "col2":{ "subCol1": 10, "subCol2": 10,
$scope.analysisDataNew = [
{
"data":{
"row1":{
"col1":{
"subCol1": 10,
"subCol2": 10,
},
"col2":{
"subCol1": 10,
"subCol2": 10,
"subCol3": 10,
},
"col3":{
"subCol1": 10,
},
},
"row2":{
"col1":{
"subCol1": 10,
"subCol2": 10,
},
"col2":{
"subCol1": 10,
"subCol2": 10,
"subCol3": 10,
},
"col3":{
"subCol1": 10,
},
},
}
}
];
我正在尝试使用它创建一个带有ng repeat的表
到目前为止我试过的是这个
for (var i = 0; i < $scope.analysisDataNew.length; i++) {
// row list
$scope.analysisDataNew[i].xAxis = Object.keys($scope.analysisDataNew[i].data);
// col list
if($scope.analysisDataNew[i].subCol){
var rows = Object.keys($scope.analysisDataNew[i].data);
var cols = $scope.analysisDataNew[i].data[rows[0]];
var colList = [];
for(var j=0; j<Object.keys(cols).length; j++){
colList.push({name: Object.keys(cols)[j]});
colList[j].subcol = [];
for(var k=0; k < Object.keys(cols[Object.keys(cols)[j]]).length; k++){
colList[j].subcol.push(Object.keys(cols[Object.keys(cols)[j]])[k]);
};
};
$scope.analysisDataNew[i].colList = colList;
} else {
$scope.analysisDataNew[i].colList = Object.keys($scope.analysisDataNew[i].data[$scope.analysisDataNew[i].xAxis[0]]);
};
console.log($scope.analysisDataNew[i]);
};
for(变量i=0;i<$scope.analysisDataNew.length;i++){
//行列表
$scope.analysisDataNew[i].xAxis=Object.keys($scope.analysisDataNew[i].data);
//列
if($scope.analysisDataNew[i].subCol){
var rows=Object.keys($scope.analysisDataNew[i].data);
var cols=$scope.analysisDataNew[i]。数据[rows[0]];
var colList=[];
对于(var j=0;j我创建了一个全div解决方案,在该解决方案中,我不预先转换数据:
技巧是使用ng repeat=“(key,value)in…”如下所述:。这允许在映射上迭代:
<div class="tbl">
<div ng-repeat='(rowId, rowValue) in analysisDataNew[0].data' class="tbl-row">
<div ng-repeat="(colId, colValue) in rowValue" class="tbl-cell">
<div class="tbl tbl-inner">
<div class="tbl-row">
<div ng-repeat="(subColId, subColValue) in colValue" class="tbl-cell">
{{subColValue}}
</div>
</div>
</div>
</div>
</div>
</div>
{{subColValue}}
如果你(可能)要在analysisDataNew中显示所有条目的所有数据,您需要在外部ng repeat周围额外的ng repeat。您自己做过任何尝试吗?是的,当然,我尝试使用loop-in controller创建数组,直到没有子列为止,我很好,能够在表格和highcharts中打印数据,但我面临子列的问题你可以发布你已经发布的内容got@GauravAggarwal你能把对象改成数组吗?一旦这样做了,它就会变成数组了easy@mvermand很公平。。。posted@Gaurav阿加瓦尔,我的解决方案适合你的需要吗?