setColumnDefs 不适用于某些农业网格

setColumnDefs is not working for some ag-grids

我的代码中有多个农业网格,"setColumnDefs" 适用于所有网格,但是当我尝试创建新网格时,出现错误:无法读取 属性 'setColumnDefs' 未定义。 我不知道我做错了什么。它似乎适用于其他农业网格。

vm.newGrid = {
            enableSorting: true,
            enableColResize: true
        };

var newGridColumns = [
            {
                headerName: 'DATA',
                field: 'data',
            }, {
                headerName: 'PERCENT',
                field: 'percent'
            }
        ];

vm.newGrid.api.setColumnDefs(newGridColumns);

在 api 准备就绪之前,您需要等待网格初始化。

所以你有两个选择: a) 将网格直接放到 gridOptions

vm.newGrid = {
  enableSorting: true,
  enableColResize: true,
  columnDefs: [
        {
            headerName: 'DATA',
            field: 'data',
        }, {
            headerName: 'PERCENT',
            field: 'percent'
        }
    ]
};

或 b) 等待网格初始化

vm.newGrid = {
  enableSorting: true,
  enableColResize: true,
  onGridReady: function(params) {
      params.api.setColumnDefs(newGridColumns);
  }
};