主要的三个参数
:row-key=“(row) => { return row.id }”
:data=“tableData”
:reserve-selection=“true”
<el-table
v-if="wgShow2"
ref="multipleTable"
:row-key="(row) => { return row.id }"
@selection-change="handleSelectionChange"
max-height="500"
:data="tableData"
tooltip-effect="dark"
style="width: 100%"
>
<el-table-column type="selection" :reserve-selection="true" width="55"></el-table-column>
<el-table-column prop="name" label="姓名"></el-table-column>
</el-table>
// 后台返回的数据 是字符串,要转换一下
const treeArr = row.receiveUserIdList ? JSON.parse(row.receiveUserIdList) : []
// 建立新的数组和el-table :data 原数据数组过滤
const newTree = []
treeArr.map(x => {
newTree.push({
id: x
})
})
that.$nextTick(() => {
// setTimeout 解决 Cannot read property 'setCheckedKeys' of undefined
setTimeout(() => {
// 回显必须要是 同宗同源的数据才行
this.tableData.forEach(i => {
newTree.forEach(j => {
if (i.id == j.id) {
this.$refs.multipleTable.toggleRowSelection(i, true)
}
})
})
}, 200)
})
最终效果: