React中如何通过代码隐藏agGrid的Pinned Top-Row?
在React中隐藏agGrid固定顶行的方法
当然可行,你只需要通过agGrid的API将pinnedTopRowData设置为null或空数组[],再触发网格刷新即可。
具体实现步骤:
- 找到用户完成输入后的触发时机(比如单元格编辑结束事件
cellEditingStopped,或者自定义的"完成"按钮点击事件) - 在对应的处理函数中调用网格API清空固定顶行数据:
const hidePinnedTopRow = (api) => { // 清空固定顶行数据 api.setGridOption("pinnedTopRowData", null); // 强制刷新单元格确保视图更新 api.refreshCells({ force: true }); };
结合你的场景示例:
如果是在单元格编辑完成后自动隐藏,你可以在agGrid的配置中监听cellEditingStopped事件:
<AgGridReact // 其他配置项 onCellEditingStopped={(params) => { // 判断是否是固定顶行的编辑完成(可选,根据你的业务逻辑) if (params.node.rowPinned === 'top') { hidePinnedTopRow(params.api); } }} />
原理很简单:agGrid的固定顶行完全依赖pinnedTopRowData提供的数据,当该值为空时,网格会自动移除固定顶行的渲染。
内容的提问来源于stack exchange,提问作者Mike Gledhill
相关产品推荐
相关产品推荐

