React版agGrid服务端行模型如何隐藏默认loading spinner
agGrid 服务端行模型禁用默认加载遮罩方案
针对服务端行模型下默认loading spinner遮挡已展示数据的问题,可直接通过grid内置配置属性实现隐藏/禁用,无需额外改造核心逻辑,具体方案按使用场景选择:
- 完全禁用所有场景下的默认加载遮罩(包含首次加载、数据失效刷新、分页拉取触发的loading层)
在gridOptions中配置suppressLoadingOverlay: true即可,配置后agGrid不会再渲染居中的默认加载遮罩,已加载的数据不会被遮挡。 - 仅关闭数据刷新时的遮罩,保留首次加载的loading提示
服务端行模型提供专属配置suppressServerSideFullRefreshOverlay: true,开启后首次加载表格时仍会显示默认loading,后续调用refreshServerSide()、数据源失效触发的全量刷新、参数变更重载场景下,都不会弹出遮罩覆盖已有数据。 - 旧版本兼容方案(28.x之前版本无上述专属刷新配置)
直接给overlayLoadingTemplate赋值为空字符串,清空默认加载层的渲染模板,同样可以达到隐藏spinner、避免遮罩遮挡的效果。 - 自定义加载提示(不想要默认居中遮罩,又需要加载状态提示)
传入自定义的loadingOverlayComponent组件,可将加载提示放置在表格顶部、角落等不遮挡数据的位置,完全替代默认的spinner样式和位置。
配置示例:
const gridOptions = { rowModelType: 'serverSide', // 按需选择对应配置 // 1. 完全关闭所有加载遮罩 suppressLoadingOverlay: true, // 2. 仅关闭刷新时的遮罩,保留首次加载 // suppressServerSideFullRefreshOverlay: true, // 3. 旧版本清空加载模板 // overlayLoadingTemplate: '', // 其余业务配置 columnDefs: [], serverSideDatasource: yourCustomDatasource }
注意:关闭默认遮罩后,建议自行绑定数据加载状态,在表格外部或非遮挡区域增加轻量加载提示,避免用户刷新时无状态感知。
内容的提问来源于stack exchange,提问作者LOKESH KUMAR
相关产品推荐
相关产品推荐

