首页 > 解决方案 > 在 Angular-Slickgrid 中默认选中或选中所有行复选框和标题行复选框

问题描述

我正在使用 Angular SLickgrid 并希望显示所有行的所有复选框以及默认选中的标题行复选框(当网格加载时)。我可以通过使用部分实现它,this.angularGrid.gridService.setSelectedRows(this.allDataId) 但我在控制台中遇到错误并且所有数据行都不可见。我不能使用预设,因为我想显示所有选定的行,直到加载角度网格时,我没有所有行 ID。下面是我得到的错误。我在将数据传递给之前添加了空检查,setSelectedRows()但没有用。

TypeError: Cannot read property 'children' of null
    at ensureCellNodesInRowsCache (dist/data.bundle.js.gz:2692)
    at getCellNode (dist/data.bundle.js.gz:2692)
    at updateCellCssStylesOnRenderedRows (dist/data.bundle.js.gz:2692)
    at setCellCssStyles (/dist/data.bundle.js.gz:2692)
    at Event.handleSelectedRangesChanged (/dist/data.bundle.js.gz:2692)
    at Event.notify (/dist/data.bundle.js.gz:2674)
    at RowSelectionModel.p [as setSelectedRanges] (/dist/data.bundle.js.gz:2692)
    at SlickGrid.setSelectedRows (/dist/data.bundle.js.gz:2692)
    at SlickGrid.m (/dist/data.bundle.js.gz:2692)
    at Event.notify (/dist/data.bundle.js.gz:2674)

请建议如何实现它。谢谢。

标签: angular-gridangular-slickgrid

解决方案


答案,如果这是一个可以接受的答案,就在你的问题中。SlickGrid Row Selection 插件并不意味着一开始就被全部选中,所以你必须坚持使用setSelectedRows,如果你手头没有所有 Id,那么当你这样做时调用它......块,然后调用setSelectedRows每个块。这里没有魔法,当你有正确的 ID 时你需要调用它


推荐阅读