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

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


相关推荐
henujolly12 小时前
ethers.js读取合约信息
开发语言·javascript·区块链
毕设源码-郭学长12 小时前
【开题答辩全过程】以 基于Web的高校课程目标达成度系统设计与实现为例,包含答辩的问题和答案
前端
wuhen_n13 小时前
高阶函数与泛型函数的类型体操
前端·javascript·typescript
POLITE313 小时前
Leetcode 437. 路径总和 III (Day 16)JavaScript
javascript·算法·leetcode
難釋懷14 小时前
解决状态登录刷新问题
java·开发语言·javascript
ヤ鬧鬧o.14 小时前
多彩背景切换演示
前端·css·html·html5
一起养小猫14 小时前
Flutter实战:从零实现俄罗斯方块(三)交互控制与事件处理
javascript·flutter·交互
lethelyh14 小时前
Vue day1
前端·javascript·vue.js
酉鬼女又兒14 小时前
SQL113+114 更新记录(一)(二)+更新数据知识总结
java·服务器·前端
无风听海14 小时前
AngularJS中 then catch finally 的语义、执行规则与推荐写法
前端·javascript·angular.js