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) // 删除接口方法调用,自己封装就好了。
}

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


相关推荐
袅沫17 分钟前
Nginx中部署多个前端项目——区分路径
服务器·前端
Asize22 分钟前
为什么写代码前要先规划组件树?Next.js + Redis 笔记系统实战
前端·javascript·next.js
meilindehuzi_a25 分钟前
Next.js 全栈基础实战:从 SPA、SSR 到 App Router 与 Todo API
开发语言·javascript·ecmascript
用户9210802628625 分钟前
6. 数据大屏 WebSocket 稳定性优化:心跳检测、断点续传和消息去重
前端
柚yuzumi26 分钟前
CSS 定位布局:让元素各就各位
前端·css
光影少年29 分钟前
react navite图片加载优化、大图卡顿、缓存策略
前端·react native·react.js
小林ixn29 分钟前
用 Next.js 和 Redis 撸一个 Markdown 笔记系统:RSC 实战与组件化拆解
前端·redis·next.js
渣波30 分钟前
重构旅行体验:基于 React 的 AI 旅游助手对话系统实战解析
前端·javascript
今日无bug32 分钟前
列表转树:一道题搞懂 HashMap 在算法里的价值
前端·数据结构
用户9210802628633 分钟前
5. 数据大屏实时通信第一步:为什么选择 WebSocket,以及如何接入 Socket.IO
前端