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

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


相关推荐
你的不安14 小时前
GEE中getInfo()
javascript·云计算·gee
阳火锅14 小时前
Element / AntD 官方都没做好的功能,被这个开源小插件搞定了!
前端·vue.js·面试
大阳光男孩14 小时前
Uniapp+Vue3树形选择器
前端·javascript·uni-app
绝世唐门三哥14 小时前
uniapp系列-uniappp都有哪些生命周期?
vue.js·小程序·uniapp
沙振宇14 小时前
【Web】使用Vue3+PlayCanvas开发3D游戏(九)纹理视觉效果
前端·游戏·3d·纹理
前端 贾公子14 小时前
uniapp中@input修改input内容不生效 | 过滤赋值无效 | 连续非法字符不更新的问题
开发语言·前端·javascript
533_14 小时前
[vxe-table] 表头:点击出现输入框
android·java·javascript
写不来代码的草莓熊14 小时前
el-date-picker ,自定义输入数字自动转换显示yyyy-mm-dd HH:mm:ss格式 【仅双日历 datetimerange专用】
开发语言·前端·javascript
绺年14 小时前
关于 mac 使用ssh配置
前端
LDX前端校草14 小时前
verdaccio数据迁移
前端