fix(BasicTable): showIndexColumn/showRowSelection cache should by route name (#3489)
This commit is contained in:
parent
98e2e4c89a
commit
d88f455cd3
|
|
@ -210,7 +210,9 @@
|
||||||
// 更新 showIndexColumn
|
// 更新 showIndexColumn
|
||||||
showIndexColumnUpdate(e.target.checked);
|
showIndexColumnUpdate(e.target.checked);
|
||||||
// 更新 showIndexColumn 缓存
|
// 更新 showIndexColumn 缓存
|
||||||
props.cache && tableSettingStore.setShowIndexColumn(e.target.checked);
|
props.cache &&
|
||||||
|
typeof route.name === 'string' &&
|
||||||
|
tableSettingStore.setShowIndexColumn(route.name, e.target.checked);
|
||||||
};
|
};
|
||||||
|
|
||||||
// 是否显示选择列
|
// 是否显示选择列
|
||||||
|
|
@ -220,7 +222,9 @@
|
||||||
// 更新 showRowSelection
|
// 更新 showRowSelection
|
||||||
showRowSelectionUpdate(e.target.checked);
|
showRowSelectionUpdate(e.target.checked);
|
||||||
// 更新 showRowSelection 缓存
|
// 更新 showRowSelection 缓存
|
||||||
props.cache && tableSettingStore.setShowRowSelection(e.target.checked);
|
props.cache &&
|
||||||
|
typeof route.name === 'string' &&
|
||||||
|
tableSettingStore.setShowRowSelection(route.name, e.target.checked);
|
||||||
};
|
};
|
||||||
|
|
||||||
// 更新列缓存
|
// 更新列缓存
|
||||||
|
|
@ -435,12 +439,18 @@
|
||||||
|
|
||||||
// 从缓存恢复
|
// 从缓存恢复
|
||||||
const restore = () => {
|
const restore = () => {
|
||||||
// 设置过才恢复
|
if (typeof route.name === 'string') {
|
||||||
if (typeof tableSettingStore.getShowIndexColumn === 'boolean') {
|
const isIndexColumnShowCache = tableSettingStore.getShowIndexColumn(route.name);
|
||||||
isIndexColumnShow.value = defaultIsIndexColumnShow && tableSettingStore.getShowIndexColumn;
|
// 设置过才恢复
|
||||||
}
|
if (typeof isIndexColumnShowCache === 'boolean') {
|
||||||
if (typeof tableSettingStore.getShowRowSelection === 'boolean') {
|
isIndexColumnShow.value = defaultIsIndexColumnShow && isIndexColumnShowCache;
|
||||||
isRowSelectionShow.value = defaultIsRowSelectionShow && tableSettingStore.getShowRowSelection;
|
}
|
||||||
|
|
||||||
|
const isRowSelectionShowCache = tableSettingStore.getShowRowSelection(route.name);
|
||||||
|
// 设置过才恢复
|
||||||
|
if (typeof isRowSelectionShowCache === 'boolean') {
|
||||||
|
isRowSelectionShow.value = defaultIsRowSelectionShow && isRowSelectionShowCache;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// 序号列更新
|
// 序号列更新
|
||||||
onIndexColumnShowChange({
|
onIndexColumnShowChange({
|
||||||
|
|
|
||||||
|
|
@ -26,11 +26,15 @@ export const useTableSettingStore = defineStore({
|
||||||
},
|
},
|
||||||
//
|
//
|
||||||
getShowIndexColumn(state) {
|
getShowIndexColumn(state) {
|
||||||
return state.setting?.showIndexColumn;
|
return (routerName: string) => {
|
||||||
|
return state.setting?.showIndexColumn?.[routerName];
|
||||||
|
};
|
||||||
},
|
},
|
||||||
//
|
//
|
||||||
getShowRowSelection(state) {
|
getShowRowSelection(state) {
|
||||||
return state.setting?.showRowSelection;
|
return (routerName: string) => {
|
||||||
|
return state.setting?.showRowSelection?.[routerName];
|
||||||
|
};
|
||||||
},
|
},
|
||||||
//
|
//
|
||||||
getColumns(state) {
|
getColumns(state) {
|
||||||
|
|
@ -59,18 +63,24 @@ export const useTableSettingStore = defineStore({
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
//
|
//
|
||||||
setShowIndexColumn(show: boolean) {
|
setShowIndexColumn(routerName: string, show: boolean) {
|
||||||
this.setTableSetting(
|
this.setTableSetting(
|
||||||
Object.assign({}, this.setting, {
|
Object.assign({}, this.setting, {
|
||||||
showIndexColumn: show,
|
showIndexColumn: {
|
||||||
|
...this.setting?.showIndexColumn,
|
||||||
|
[routerName]: show,
|
||||||
|
},
|
||||||
}),
|
}),
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
//
|
//
|
||||||
setShowRowSelection(show: boolean) {
|
setShowRowSelection(routerName: string, show: boolean) {
|
||||||
this.setTableSetting(
|
this.setTableSetting(
|
||||||
Object.assign({}, this.setting, {
|
Object.assign({}, this.setting, {
|
||||||
showRowSelection: show,
|
showRowSelection: {
|
||||||
|
...this.setting?.showRowSelection,
|
||||||
|
[routerName]: show,
|
||||||
|
},
|
||||||
}),
|
}),
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -54,7 +54,7 @@ export interface BeforeMiniState {
|
||||||
|
|
||||||
export interface TableSetting {
|
export interface TableSetting {
|
||||||
size: Nullable<SizeType>;
|
size: Nullable<SizeType>;
|
||||||
showIndexColumn: Nullable<boolean>;
|
showIndexColumn: Recordable<Nullable<boolean>>;
|
||||||
columns: Recordable<Nullable<Array<ColumnOptionsType>>>;
|
columns: Recordable<Nullable<Array<ColumnOptionsType>>>;
|
||||||
showRowSelection: Nullable<boolean>;
|
showRowSelection: Recordable<Nullable<boolean>>;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue