问题:
切换分页触发rowSelection的onChange事件,页面勾选状态正常,selectedRowKeys返回数据正确,但是selectedRows数据只有当前页的,之前的数据丢失
解决:
1.数据不多的话,因为selectedRowKeys数据正常,那么rowKey可以绑定整条record数据,selectedRowKeys再JSON.parse就可以了
<a-table
...
:rowSelection="{
selectedRowKeys: "selectedRowKeys",
onChange: onSelectChange
}"
:rowKey="record => JSON.stringify(record)"
></a-table>
2.数据去重
onSelectChange(selectedRowKeys, selectedRows) {
this.selectedRowKeys = selectedRowKeys
// 先拼接
this.selectedRows = this.selectedRows.concat(selectedRows)
// 后去重,此id是区分的唯一标识
this.selectedRows = this.selectedRows.filter((item, index) => {
this.selectedRows.findIndex(el => el.id === item.id) === index
})
}
暂时只想到这两种,欢迎讨论