ant-design-vue的

Ant Design Vue 中,preserveSelectedRowKeys 是用于 Table 组件的一项属性,主要作用是控制在表格数据变化(如分页、过滤、排序等)时,是否保留已选择行的 rowKey

默认行为

当你使用行选择功能(rowSelection)并且更改了分页、过滤条件或排序时,默认情况下表格会清除当前页之外的选中项。这是因为表格会认为当前显示的数据已经发生了变化。

preserveSelectedRowKeys 的作用

如果设置 preserveSelectedRowKeystrue,即使表格数据变化(如分页、排序等),已选中的行依然会被保留。它确保选中的 rowKey 不会因为表格重新渲染而丢失。

html 复制代码
  <a-table
    :row-selection="rowSelection"
    :columns="columns"
    :data-source="data"
    :pagination="pagination"
    :row-key="record => record.id"
    :preserve-selected-row-keys="true"
  />

注意在rowSelection 里面使用,且返回computed

javascript 复制代码
const selectKeys = ref<Key[]>([]);
const rowSelection = computed<ProTableProps['rowSelection']>(() => ({
  selectedRowKeys: selectKeys.value,
  preserveSelectedRowKeys: true,
  onChange(values: Key[]) {
    selectKeys.value = values;
  },
}));
相关推荐
李明卫杭州2 小时前
Vue 3 `markRaw` 详解:什么时候该让一个对象"别被代理"
vue.js
用户83134859306982 小时前
Vue+Threejs实现人物奔跑场景
vue.js·webgl·three.js
meilindehuzi_a2 小时前
Vue 项目中的前端 BFF:跨域代理与流式请求实战
前端·javascript·vue.js
小林ixn14 小时前
从BFF到SSE:我在Vue项目里藏了个“AI翻译官”
前端·vue.js·vite
Listen·Rain20 小时前
Vue3中组件间通信详解
前端·javascript·vue.js
Listen·Rain20 小时前
Vue3中customRef详解
前端·javascript·vue.js
濮水大叔20 小时前
Hooks 之后,为什么前端仍需要“包裹”能力?
vue.js·react.js·前端框架
daols8821 小时前
vxe-table 导出自定义插槽模板内容
前端·javascript·vue.js·vxe-table
山东点狮信息科技有限公司1 天前
企业级开源OA系统推荐
vue.js·spring boot·性能优化·系统架构·开源
gis开发之家1 天前
《Vue3 从入门到大神33篇》Vue3 源码详解(三):响应式核心思想——从 Object.defineProperty 到 Proxy
前端·javascript·vue.js·vue3·vue3源码