|
|
@@ -279,13 +279,14 @@ export function useCustomSelection(
|
|
|
const index = selectedKeys.value.findIndex((key) => key === recordKey);
|
|
|
if (checked) {
|
|
|
if (index === -1) {
|
|
|
- selectedKeys.value.push(recordKey);
|
|
|
- selectedRows.value.push(record);
|
|
|
+ // 使用新数组替换,确保Vue响应式系统能检测到变化
|
|
|
+ selectedKeys.value = [...selectedKeys.value, recordKey];
|
|
|
+ selectedRows.value = [...selectedRows.value, record];
|
|
|
}
|
|
|
} else {
|
|
|
if (index !== -1) {
|
|
|
- selectedKeys.value.splice(index, 1);
|
|
|
- selectedRows.value.splice(index, 1);
|
|
|
+ selectedKeys.value = selectedKeys.value.filter((_, i) => i !== index);
|
|
|
+ selectedRows.value = selectedRows.value.filter((_, i) => i !== index);
|
|
|
}
|
|
|
}
|
|
|
}
|