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没有生效,这个函数就没有意义了。

相关推荐
mCell1 小时前
前端路由详解:Hash vs History
前端·javascript·vue-router
海上彼尚1 小时前
无需绑卡的海外地图
前端·javascript·vue.js·node.js
1024肥宅2 小时前
手写 call、apply、bind 的实现
前端·javascript·ecmascript 6
科杰智能制造2 小时前
纯前端html、js实现人脸检测和表情检测,可直接在浏览器使用
前端·javascript·html
每天吃饭的羊2 小时前
组件库的有些点击事件是name-click这是如何分装de
前端·javascript·vue.js
Coder-coco2 小时前
个人健康管理|基于springboot+vue+个人健康管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·mysql·论文
x***01063 小时前
SpringSecurity+jwt实现权限认证功能
android·前端·后端
1024肥宅3 小时前
防抖(Debounce)
前端·javascript·ecmascript 6
1024肥宅3 小时前
节流(Throttle)
前端·javascript·ecmascript 6
by__csdn3 小时前
Vue2纯前端图形验证码实现详解+源码
前端·javascript·typescript·vue·状态模式·css3·canva可画