diff --git a/src/views/notice/Config/Detail/index.vue b/src/views/notice/Config/Detail/index.vue index 01a9d729..de172688 100644 --- a/src/views/notice/Config/Detail/index.vue +++ b/src/views/notice/Config/Detail/index.vue @@ -13,6 +13,7 @@ v-model:value="formData.type" placeholder="请选择通知方式" :disabled="!!formData.id" + @change="handleTypeChange" > @@ -331,22 +333,24 @@ watch( (val) => { msgType.value = MSG_TYPE[val]; - formData.value.provider = msgType.value[0].value; + formData.value.provider = + formData.value.provider !== ':id' + ? formData.value.provider + : msgType.value[0].value; - formData.value.configuration = - CONFIG_FIELD_MAP[val][formData.value.provider]; + // formData.value.configuration = + // CONFIG_FIELD_MAP[val][formData.value.provider]; - clearValid(); + // clearValid(); }, ); watch( () => formData.value.provider, (val) => { - formData.value.configuration = - CONFIG_FIELD_MAP[formData.value.type][val]; - - clearValid(); + // formData.value.configuration = + // CONFIG_FIELD_MAP[formData.value.type][val]; + // clearValid(); }, ); @@ -429,10 +433,31 @@ const getDetail = async () => { const res = await configApi.detail(route.params.id as string); // formData.value = res.result; Object.assign(formData.value, res.result); + // console.log('res.result: ', res.result); // console.log('formData.value: ', formData.value); }; getDetail(); +/** + * 通知方式改变 + */ +const handleTypeChange = () => { + setTimeout(() => { + formData.value.configuration = + CONFIG_FIELD_MAP[formData.value.type][formData.value.provider]; + // resetPublicFiles(); + }, 0); +}; + +/** + * 通知类型改变 + */ +const handleProviderChange = () => { + formData.value.configuration = + CONFIG_FIELD_MAP[formData.value.type][formData.value.provider]; + // resetPublicFiles(); +}; + /** * 表单提交 */