You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Grid.js重填表格数据时如何规避重绘并保留视图、搜索、筛选配置

Grid.js更新数据保留交互状态的实现方案

核心结论

可以实现更新表格数据的同时保留当前搜索、筛选、分页、排序等视图配置,不需要触发全量表格重绘。

具体实现方法

方法1:使用官方专用数据更新方法update()(推荐)

Grid.js实例内置的update()方法就是专门为更新数据设计的,默认会保留所有用户当前的交互状态,不需要额外配置:

// 示例:grid为你初始化的Grid.js实例对象
const newTableData = [
  ["第一行列1", "第一行列2", "第一行列3"],
  ["第二行列1", "第二行列2", "第二行列3"]
]
// 直接传入新数据即可
grid.update(newTableData)

方法2:配合updateConfig()使用(适用于同时要修改其他配置的场景)

如果你除了更新数据之外,还需要同步修改其他表格配置,可以在调用updateConfig()时添加preserveState: true参数,之后调用forceRender()也不会清空现有视图配置:

grid.updateConfig({
  data: newTableData,
  // 其他需要同步修改的配置,比如调整分页条数
  pagination: {
    limit: 15
  }
}, { preserveState: true })
// 手动触发渲染时也会保留现有状态
grid.forceRender()

注意事项

  • 新数据的列数量、列字段名要和原有表格的列定义保持一致,避免出现筛选、搜索匹配异常
  • 如果是服务端分页/服务端搜索的场景,需要自行保证传入的新数据是符合当前搜索、筛选、分页条件的结果,update()方法仅负责本地数据更新渲染,不会自动发起接口请求

内容的提问来源于stack exchange,提问作者Aesthetick

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 17:54:08