0
我使用Angular JS的ui-grid来显示一些json(特别是geojson)信息。我正在使用可展开的网格来列出额外的元数据。我使用的JSON设置如下:使用geojson数据与AngularJS可扩展ui网格
{
"type": "FeatureCollection",
"totalFeatures": 36,
"features": [{
"type": "Feature",
"id": "someid",
"geometry": {
"type": "MultiPolygon",
"coordinates": [
[
[
[-71.62599996, 41.250999959999994],
[-71.49899628, 41.250999959999994],
[-71.49899628, 41.12399619],
[-71.62599996, 41.12399619],
[-71.62599996, 41.250999959999994]
]
]
]
},
"geometry_name": "the_geom",
"properties": {
"QUAD_NAME": "Block Island",
"STATE": "RI",
"ACQYEAR": "2010",
"RESOLUTION": "1 Meter",
"FILMTYPE": "Color",
"TILE": "sometile",
"X1": -71.626,
"Y1": 41.124,
"X2": -71.499,
"Y2": 41.251
}
}
我想在子网格中显示上面的属性对象。
ui网格expandable grid example使用this json这是一个keypair对象的数组,而mine只是一个带有子属性的JavaScript对象。作为一个新的JavaScript编码器,我不明白我如何告诉ui-grid,而只是查看属性对象的定义,我给它。
下面是相关代码:
$scope.gridOptions = {
expandableRowTemplate: 'app/map/expandableRowTemplate.html',
expandableRowHeight: 150,
enableGridMenu: true,
enableRowSelection: true,
enableSelectAll: true,
selectionRowHeaderWidth: 35,
expandableRowScope: {
subGridVariable: 'subGridScopeVariable'
}
};
$scope.gridOptions.columnDefs = [{
name: 'id',
}];
$scope.gridOptions.multiSelect = true;
$http.get('/assets/rhode.json')
.success(function(data) {
//var items = data.features;
for (var i = 0; i < data.features.length; i++) {
data.features[i].subGridOptions = {
columnDefs: [{
name: 'QUAD_NAME',
// field: 'QUAD_NAME'
}, {
field: 'ACQYEAR',
// field: 'ACQYEAR'
}],
data: data.features[i].properties
}
}
$scope.gridOptions.data = data.features;
});