Element Plus Table组件默认多选toggleRowSelection()失效问题解决思路

506 阅读1分钟

先说一下背景,要做一个table弹窗,可以设置或者编辑。

由此用到了table选择框默认值的设置,但是按照文档中的写法写了之后发现不生效,打印了一下 @selection-change 中的内容,发现设置上了,但是又被清除了。

解决思路

const colorList = reavctive({ data:[] })
const res = await request(); // res是查出来的list

// 【关键】查出数据来之后 
colorList.data.push(...res);
colorList.data.forEach(item => {
    if(item.isCheck) {
        colorTableRef.value.toggleRowSelection(item, true)
    }
})

之前查出数据来之后,我就直接赋值了

colorList.data = res

所以会出问题,改成解构后就好了

colorList.data.push(...res);