我有一个关于columnDefs动态变化的问题.这是我的gridOptions:
$scope.gridOptions = { columnDefs: [],enableFilter: true,rowData: null,rowSelection: 'multiple',rowDeselection: true };
当我从服务器检索数据时:
$scope.customColumns = []; $http.post('/Home/GetProducts',{ tableName: 'TABLE_PRODUCT' }).success(function (data) { angular.forEach(data.Columns,function (c) { $scope.customColumns.push( { headerName: c.Name,field: c.Value,width: c.Width } ); }); $scope.gridOptions.columnDefs = $scope.customColumns; $scope.gridOptions.rowData = data.Products; $scope.gridOptions.api.onNewRows(); }).error(function () { });
注意:这里c是来自服务器的列对象.
当动态生成列并将其分配给$scope.gridOptions.columnDefs时,会出现空格,但是$scope.customColumns数组将填充右边生成的列对象.请帮助我是这个bug还是我做错了?
在网格中,gridOptions中的列在网格初始化时使用一次.如果您在初始化后更改列,则必须告知网格.这是通过调用gridOptions.api.setColumnDefs()
原文链接:https://www.f2er.com/angularjs/140529.html这种api方法的细节在ag-grid documentation here中提供.