diff --git a/src/hooks/modules/useResetReactive.ts b/src/hooks/modules/useResetReactive.ts index 1ad61e2..bd850fd 100644 --- a/src/hooks/modules/useResetReactive.ts +++ b/src/hooks/modules/useResetReactive.ts @@ -1,8 +1,8 @@ import { reactive } from 'vue' -import { cloneDeep } from 'lodash-es' +import { cloneDeep, isFunction } from 'lodash-es' export function useResetReactive(value: T) { - const getInitValue = () => cloneDeep(value) + const getInitValue = () => isFunction(value) ? value() : cloneDeep(value) const state = reactive(getInitValue()) diff --git a/src/views/system/config/mail/index.vue b/src/views/system/config/mail/index.vue index c5821f2..a069bd0 100644 --- a/src/views/system/config/mail/index.vue +++ b/src/views/system/config/mail/index.vue @@ -71,7 +71,7 @@ { form.MAIL_PORT = mailConfig.value.MAIL_PORT.value || 0 form.MAIL_USERNAME = mailConfig.value.MAIL_USERNAME.value || '' form.MAIL_PASSWORD = mailConfig.value.MAIL_PASSWORD?.value || '' - form.MAIL_SSL_ENABLED = mailConfig.value.MAIL_SSL_ENABLED.value || '' + form.MAIL_SSL_ENABLED = mailConfig.value.MAIL_SSL_ENABLED.value || 0 form.MAIL_SSL_PORT = mailConfig.value.MAIL_SSL_PORT.value || 0 } @@ -176,7 +176,7 @@ const getDataList = async () => { loading.value = true const { data } = await listOption(queryForm) mailConfig.value = data.reduce((obj: MailConfig, option: OptionResp) => { - obj[option.code] = { ...option, value: ['MAIL_PORT', 'MAIL_SSL_PORT'].includes(option.code) ? Number.parseInt(option.value) : option.value } + obj[option.code] = { ...option, value: ['MAIL_PORT', 'MAIL_SSL_PORT', 'MAIL_SSL_ENABLED'].includes(option.code) ? Number.parseInt(option.value) : option.value } return obj }, {}) handleCancel() diff --git a/src/views/user/profile/BasicInfoUpdateModal.vue b/src/views/user/profile/BasicInfoUpdateModal.vue index c9c7e4f..e592f00 100644 --- a/src/views/user/profile/BasicInfoUpdateModal.vue +++ b/src/views/user/profile/BasicInfoUpdateModal.vue @@ -28,10 +28,10 @@ const userInfo = computed(() => userStore.userInfo) const visible = ref(false) const formRef = ref>() -const [form, resetForm] = useResetReactive({ +const [form, resetForm] = useResetReactive(() => ({ nickname: userInfo.value.nickname, gender: userInfo.value.gender, -}) +})) const columns: ColumnItem[] = reactive([ {