diff --git a/frontendNew/src/pages/Dcalc/Character/Forge/index.vue b/frontendNew/src/pages/Dcalc/Character/Forge/index.vue index 93d0349d..c523dcb0 100644 --- a/frontendNew/src/pages/Dcalc/Character/Forge/index.vue +++ b/frontendNew/src/pages/Dcalc/Character/Forge/index.vue @@ -227,7 +227,7 @@ const setOathAdaptation = (part: string, value: string) => { const partsToApply = oathBatchApply.value ? infoStore.oathParts : [part]; partsToApply.forEach((item) => { if (!configStore.config.oaths[item]) { - configStore.config.oaths[item] = { ...configStore.defaultOathConfig }; + configStore.config.oaths[item] = configStore.createDefaultOathConfig(); } configStore.config.oaths[item].adaptation = Math.max(0, parsed); }); @@ -488,7 +488,7 @@ const resetEquipPart = (part: string) => { const resetOathPart = (part: string) => { configStore.config.oaths[part] = { - ...configStore.defaultOathConfig, + ...configStore.createDefaultOathConfig(), id: configStore.config.oaths[part]?.id ?? "", }; setNotice(`已重置誓约槽位 ${part}。`); @@ -504,7 +504,7 @@ const resetAllForge = () => { }); oathParts.value.forEach((part) => { configStore.config.oaths[part] = { - ...configStore.defaultOathConfig, + ...configStore.createDefaultOathConfig(), id: configStore.config.oaths[part]?.id ?? "", }; }); diff --git a/frontendNew/src/stores/config.ts b/frontendNew/src/stores/config.ts index 7b87b014..b1f82966 100644 --- a/frontendNew/src/stores/config.ts +++ b/frontendNew/src/stores/config.ts @@ -104,10 +104,12 @@ const defaultAvatarConfig = { option: "0", }; -const defaultOathConfig = { +const createDefaultOathConfig = (): IConfigOath => ({ id: "", adaptation: 0, -}; +}); + +const defaultOathConfig = createDefaultOathConfig(); const createDefaultEmblemConfig = (): IConfigEmblem => ({ lv: 0, @@ -202,7 +204,7 @@ export const useConfigStore = defineStore("configStore", () => { // oxlint-disable-next-line no-unused-expressions config.value && !config.value?.oaths.hasOwnProperty(p) && - (config.value.oaths[p.toString()] = { ...defaultOathConfig }); + (config.value.oaths[p.toString()] = createDefaultOathConfig()); }); infoStore.options.forEach((option) => { @@ -310,6 +312,7 @@ export const useConfigStore = defineStore("configStore", () => { defaultEqusConfig, defaultAvatarConfig, defaultOathConfig, + createDefaultOathConfig, defaultEmblemConfig, createDefaultEmblemConfig, changeSourceLogs,