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

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


相关推荐
阿蒙Amon3 小时前
TypeScript学习-第7章:泛型(Generic)
javascript·学习·typescript
睡美人的小仙女1273 小时前
Threejs加载环境贴图报错Bad File Format: bad initial token
开发语言·javascript·redis
fanruitian3 小时前
uniapp android开发 测试板本与发行版本
前端·javascript·uni-app
rayufo4 小时前
【工具】列出指定文件夹下所有的目录和文件
开发语言·前端·python
RANCE_atttackkk4 小时前
[Java]实现使用邮箱找回密码的功能
java·开发语言·前端·spring boot·intellij-idea·idea
摘星编程4 小时前
React Native + OpenHarmony:Timeline垂直时间轴
javascript·react native·react.js
2501_944525545 小时前
Flutter for OpenHarmony 个人理财管理App实战 - 支出分析页面
android·开发语言·前端·javascript·flutter
jin1233226 小时前
React Native鸿蒙跨平台完成剧本杀组队详情页面,可以复用桌游、团建、赛事等各类组队详情页开发
javascript·react native·react.js·ecmascript·harmonyos
李白你好6 小时前
Burp Suite插件用于自动检测Web应用程序中的未授权访问漏洞
前端
经年未远7 小时前
vue3中实现耳机和扬声器切换方案
javascript·学习·vue