我正在使用ui-grid和306_expandable_grid,我已經使用了準確的代碼,因爲在文檔中,但我面臨着一個錯誤的問題。306_expandable_grid - 無法讀取'data'的屬性undefined
app.js
$http.get('resources/data/title2.json')
.success(function(data){
console.log(data);
console.log(data[0].Data);
console.log(data.length);
for(i = 0; i < data[i].length; i++){
data[i].subGridOptions = {
columnDefs: [
{name:"Title" },
{name:"Jan-10" },
{name:"Feb-10"},
{name:"Mar-10" },
{name:"Apr-10" },
{name:"May-10" },
{name:"Jun-10" },
{name:"Jul-10" },
{name:"Aug-10" },
{name:"Sep-10" },
{name:"Oct-10" },
{name:"Nov-10" },
{name:"Dec-10" }
],
data: data[i].Data
}
}
// $scope.subGridOptions.data = data;
$scope.gridOptions.data = data;
// $scope.title = data[0].Title;
});
externalHtmlFile.html
<div ui-grid="row.entity.subGridOptions" style="height:150px;"></div>
這是我堅持
TypeError: Cannot read property 'data' of undefined
at new <anonymous> (http://localhost/ng-Grid/resources/scripts/ui-grid-unstable.js:2883:41)
at Object.e [as invoke] (http://localhost/ng-Grid/resources/scripts/angular.min.js:36:456)
at E.instance (http://localhost/ng-Grid/resources/scripts/angular.min.js:75:118)
at http://localhost/ng-Grid/resources/scripts/angular.min.js:58:276
at r (http://localhost/ng-Grid/resources/scripts/angular.min.js:7:408)
at M (http://localhost/ng-Grid/resources/scripts/angular.min.js:58:260)
at http://localhost/ng-Grid/resources/scripts/angular.min.js:65:412
at http://localhost/ng-Grid/resources/scripts/angular.min.js:109:276
at h.$eval (http://localhost/ng-Grid/resources/scripts/angular.min.js:123:139)
at h.$digest (http://localhost/ng-Grid/resources/scripts/angular.min.js:120:220)
的錯誤時,我加號圖標點擊,錯誤發生......我無法找到我能理解的解決方案。請幫忙
是的,謝謝你的解釋先生...即使我是新的angularJS。我知道出了什麼問題,我正在寫下來。 'columnDefs:[{name:'title',** field:'title'**},...];''中的'field'參數給我的問題在我的上下文中,我已經定義了grid選項的範圍 '$ scope.gridOptions = { expandableRowTemplate:'externalhtmlfile.html', expandableRowHeight:300, aggregationHideLabel:false }'。 我花了一些時間來理解數據綁定到的「field」。 – 2014-11-01 02:42:10
另請注意,'field'是'name'的別名,可用於向後兼容。 [API文檔](http://ui-grid.info/docs/#/api/ui.grid.class:GridOptions)說:「爲了與2.x向後兼容,可以使用field屬性代替名稱」。你可以使用'displayName'來改變列在網格上的標題方式,如下所示:'{name:'field1',displayName:'pretty display name'}'。 – Ville 2014-11-01 06:24:25
我有同樣的問題。我在http.get調用之前給了gridOptions,並在成功部分中給出了scope.gridOptions {data:GET RESPONSE DATA}。 – Shamseer 2015-09-06 19:32:21