vue3 实现 table 跨页多选

Vue3 配合 element-plus 实现表格的跨页多选,我们只需要去研究下官方配置的属性和事件即可。

列表布局

注意的是 要给多选框设定type类型为selection。

注意的是 getRowKeys 方法中我们获取的是项目列表的每一项的id ,有可能数据返回的字段并不是id,我们要对接到后端,确定每条数据的唯一性标识。

复制代码
//实现跨页面多选
	const getRowKeys = (row: any) => {
	  return row.internalProblemId // row.id
	}

const handleSelectionChange = (val: any) => {
  emit('handleSelectionChange', val) // 即是被选中的数据,
}
我这里是推送出去的。
你也可以在你所需的页面定义个变量 ,接收 选中的数据 方便后边做处理。

接收的父组件页面事件处理
let delData= ref([]) // 选中的数据
//批量删除 表格复选框选中处理
const handleSelectionChange = (val: any) => {
  delData.value = val
}

做批量操作的一般都是删除,我这就直接用删除举例了。
const confirmDel = () => {
  let idList = delData.value?.map((v: any) => {
    return  v.projectProblemId
  })
  delBtnLoading.value = true
  projectDel(idList) // 删除接口方法调用,自己封装就好了。
}

这样就完成了 批量跨页选择。


相关推荐
To_OC1 小时前
LC 994 腐烂的橘子:人人都说是 BFS 入门题,我却写了三遍才过
javascript·算法·leetcode
IT_陈寒4 小时前
React的这个渲染问题连官方文档都没说清楚
前端·人工智能·后端
追逐时光者5 小时前
别再满网找零散工具了,腾讯 QQ 浏览器这个“帮小忙”工具箱真能省时间
前端·后端
如果超人不会飞5 小时前
脉络清晰的业务演进:TinyVue Timeline 时间线组件全方位实战指南
vue.js
如果超人不会飞5 小时前
从扁平到立体:掌握 TinyVue Grid 树形表格的高级实战指南
vue.js
To_OC7 小时前
LC 200 岛屿数量:经典 DFS 入门题,我第一次写居然连方向都搞错了
javascript·算法·leetcode
Asmewill7 小时前
grep&curl命令学习笔记
前端
stringwu7 小时前
Flutter 开发必备:MVI 架构的高效实现指南
前端·flutter
用户2136610035728 小时前
Vue2组件化开发与父子通信
前端·vue.js
Momo__9 小时前
TypeScript satisfies 操作符——比 as 更安全的类型守门员
前端·typescript