el-table 多选默认选中(根据返回的id给数据加默认选中状态)

前言

el-table是我们最常用的展示数据的方式,但是有时候需要用到多选来选择数据,新增数据的时候还好,选中状态都是正常的,但是修改就遇到问题,需要对这个已经选择过的数据加上默认的选中状态,本次就是解决这个问题。通过ref这个来解决。

javascript 复制代码
 setDefaultSelection() {
        // 用的时候将defaultSelectedIds 替换成你的id
        const defaultSelectedIds = [1, 3, 5]; // 示例默认选中的行的 id
        this.$nextTick(() => {
            if (this.$refs.singleTable) {
                this.$refs.singleTable.clearSelection();
                this.xiaoquAll.forEach(item => {
                    if (defaultSelectedIds.includes(item.id)) {
                        this.$refs.singleTable.toggleRowSelection(item, true);
                    }
                });
            }
        });
    },

我用的选择是多选 @select="handleCurrentChange" 这个参数实在e-table里边加的,就没必要展示全部代码了

singleTable:el-table的ref

this.xiaoquAll:这个是我的el-tabl后端返回的总数据。

基本上所有的后端返回的数据都是有一个id的,要是没有用就用index来代替,没有id方便

将这个setDefaultSelection函数 在你成功获取到数据之后调用,

注意点:setDefaultSelection函数的使用时机,一定要是有singleTable这个ref生效之后在调用,要是这个ref没有生效,这个函数就没有意义了。

相关推荐
小飞侠在吗4 小时前
vue props
前端·javascript·vue.js
DsirNg5 小时前
页面栈溢出问题修复总结
前端·微信小程序
小徐_23335 小时前
uni-app 也能远程调试?使用 PageSpy 打开调试的新大门!
前端·微信小程序·uni-app
大怪v5 小时前
【Virtual World 03】上帝之手
前端·javascript
用户841794814566 小时前
vxe-gantt 甘特图实现产品进度列表,自定义任务条样式和提示信息
vue.js
别叫我->学废了->lol在线等7 小时前
演示 hasattr 和 ** 解包操作符
开发语言·前端·python
霍夫曼7 小时前
UTC时间与本地时间转换问题
java·linux·服务器·前端·javascript
VX:Fegn08957 小时前
计算机毕业设计|基于Java人力资源管理系统(源码+数据库+文档)
java·开发语言·数据库·vue.js·spring boot·后端·课程设计
DARLING Zero two♡7 小时前
浏览器里跑 AI 语音转写?Whisper Web + cpolar让本地服务跑遍全网
前端·人工智能·whisper
Lovely Ruby8 小时前
前端er Go-Frame 的学习笔记:实现 to-do 功能(三),用 docker 封装成镜像,并且同时启动前后端数据库服务
前端·学习·golang