今日遇一难题,久探其源,终得其解,是以志之,以免日久忘怀。
原本是一个很简单的问题,从第二步点击上一步,回到第一步,是希望它能记住之前所选。
饿了么ui也给出了方法,但我总是表头上的框框被勾选,数据对象却没有勾选。
我以为是我传值不正确,弹出框是父组件,第一步第二步是子组件,于是我打印了传的值
发现和原值一般无二啊,百思不得其解...
经过我犯困清醒犯困清醒...的往复循环,我仿佛听到了小范大人在我耳边说:喂,你清醒一点,哎?我醒了,并且还真让我找到了
感谢小范大人!
原因是:数据源不匹配
要确保要勾选的row对象,也就是this.$refs.multipleTable.toggleRowSelection(row, true)中的row 与
el-table
中的数据源中的对象是同一个实例。在Vue中,如果数据是通过遍历生成的,直接操作原始数据源中的对象通常能正常工作。但如果row
是从其他地方获取的,即使其内容相同,但不是原始数组中的引用,也可能导致无法正确勾选。
所以我把表格中的数据过滤了一边,找到与传过来的数据一致的那一条,再放上去就好了