我有一个内联的cellRenderer可以如下修改单元格值:
cellRenderer: function (params) {
if(params.value) {
return params.value * 100;
}
return '';
}
但是,当控件移出cellRenderer时,它将引发以下异常:
ERROR TypeError: Failed to execute 'appendChild' on 'Node': parameter 1 is not of type 'Node'.
at CellComp.push../node_modules/ag-grid/dist/lib/rendering/cellComp.js.CellComp.afterCellRendererCreated (cellComp.js:582)
at Promise.push../node_modules/ag-grid/dist/lib/utils.js.Promise.then (utils.js:1543)
at CellComp.push../node_modules/ag-grid/dist/lib/rendering/cellComp.js.CellComp.createCellRendererInstance (cellComp.js:564)
at CellComp.push../node_modules/ag-grid/dist/lib/rendering/cellComp.js.CellComp.attachCellRenderer (cellComp.js:589)
at CellComp.push../node_modules/ag-grid/dist/lib/rendering/cellComp.js.CellComp.afterAttached (cellComp.js:100)
at rowComp.js:938
at Array.forEach (<anonymous>)
at RowComp.push../node_modules/ag-grid/dist/lib/rendering/rowComp.js.RowComp.callAfterRowAttachedOnCells (rowComp.js:936)
at RowComp.push../node_modules/ag-grid/dist/lib/rendering/rowComp.js.RowComp.insertCellsIntoContainer (rowComp.js:554)
at RowComp.push../node_modules/ag-grid/dist/lib/rendering/rowComp.js.RowComp.refreshCellsInAnimationFrame (rowComp.js:460)
我还有许多其他的cellRenderer都可以正常工作。不知道这是什么错。例如以下一项工作正常:
cellRenderer: function (params) {
return params.context.formatDate(params.data.createdDateTime);
}
我正在使用"ag-grid-enterprise": "^16.0.0",
和角度6。
答案 0 :(得分:0)
按照@Sh。 Pavel的评论,在将其更新为return ''+ params.value * 100
后有效。
这里要了解的重要一点是,cellRenderer
期望string
作为回报,以便将其直接附加到DOM。
由于您返回的是一个number
,所以没有生成正确的Node
(我想)。可以通过执行return '' + params.value * 100;
来解决。