【踩坑】el-table调用getSelectionRows方法后,勾选当前行的同时取消勾选了其它行

问题代码:

// 绑定给el-table的data
const groupWorks = computed(() =>
worksGroupByType.value.map((type) => {
return {
...type,
works: [...type.priorityWorks, ...(showRoutineWork.value ? type.normalWorks : [])]
};
}).filter((type) => type.works.length)
);

后来修改了后端数据结构,将priorityWorks和normalWorks合并了,并改成如下方式后,没有问题:

const showWorksGroup = computed(() => {
return worksGroupByType.value.map((type) => {
return {
...type,
works: showRoutineWork.value ? type.works : type.works.filter((work) => work.isPriority)
};
}).filter((type) => type.works.length);
});

原因:
原代码中,work引用是一直在变化的,因为是通过合并priorityWorks和normalWorks来产生一个新数组,引用地址会发生变化。

posted @   南山有榛  阅读(12)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示