checkpoint: 列显示设置持久化修复——保存 watch 加 deep 监听

表头组件勾选列是原地改对象(col.checked/visible),浅 watch 只在数组引用替换时触发,
漏掉勾选 → localStorage 无数据 → 刷新即恢复默认。改 deep:true 覆盖全部原地修改来源。
This commit is contained in:
34047007@qq.com
2026-08-07 22:43:38 +08:00
parent 853d01d796
commit 28ab794b30
@@ -194,10 +194,10 @@ export function useTableColumns<T = any>(
columnChecks.value = newChecks;
});
// 列设置变化时自动持久化(所有变更均替换整个数组引用,无需 deep
// 列设置变化时自动持久化(需 deep:表头组件勾选列是原地改对象,浅 watch 只在数组引用替换时触发,会漏掉勾选
watch([dynamicColumns, columnChecks], () => {
saveColumnSettings();
});
}, { deep: true });
// 当前显示列(基于 columnChecks 的 checked 或 visible
const columns = computed(() => {