From bb7ae31d7066a838bd177bf21c20f13ef044950b Mon Sep 17 00:00:00 2001 From: riku <risaku@163.com> Date: 星期三, 27 十二月 2023 17:45:45 +0800 Subject: [PATCH] 编写后台任务模块逻辑,完成80% --- src/components/form/FYForm.vue | 54 ++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 40 insertions(+), 14 deletions(-) diff --git a/src/components/form/FYForm.vue b/src/components/form/FYForm.vue index ade1ff9..07fde84 100644 --- a/src/components/form/FYForm.vue +++ b/src/components/form/FYForm.vue @@ -26,12 +26,17 @@ * 鍙紶鍏ュ垵濮嬭〃鍗曟暟鎹甪ormInfo锛岃〃鍗曟牎楠岃鍒檙ules * 瀹炵幇submit鍜宑ancel瑙﹀彂鍑芥暟 */ -import { defineProps, defineEmits, reactive, ref, watch, computed } from 'vue'; +import { defineProps, defineEmits, reactive, ref, watch, computed, defineExpose } from 'vue'; import { useFormConfirm } from '@/composables/formConfirm'; const props = defineProps({ //琛ㄥ崟鍩烘湰淇℃伅 - formInfo: Object, + formInfo: { + type: Object, + default: () => { + return {}; + } + }, //琛ㄥ崟妫�楠岃鍒� rules: Object, showButtons: { @@ -62,8 +67,15 @@ _locations: [ { required: true, - message: '鐪�/甯�/鍖�/闀囦笉鑳戒负绌�', - trigger: 'change', + message: '琛屾斂鍖哄垝涓嶈兘涓虹┖', + trigger: 'change' + // validator: (rule, value, callback) => { + // if (!value) { + // callback(new Error('Please input the age')); + // } else { + // callback() + // } + // } } ], _scenetype: [ @@ -71,6 +83,13 @@ required: true, message: '鍦烘櫙绫诲瀷涓嶈兘涓虹┖', trigger: 'change' + // validator: (rule, value, callback) => { + // if (!value) { + // callback(new Error('Please input the age')); + // } else { + // callback() + // } + // } } ] }); @@ -92,13 +111,18 @@ function submit() { loading.value = true; return new Promise((resolve, reject) => { - emit('submit', formObj, () => { - loading.value = false; - resolve(); - },(err)=>{ - loading.value = false; - reject(err); - }); + emit( + 'submit', + formObj, + () => { + loading.value = false; + resolve(); + }, + (err) => { + loading.value = false; + reject(err); + } + ); }); } @@ -107,9 +131,9 @@ emit('cancel'); } -const allRules = computed(()=>{ - return {...baseRules, ...props.rules} -}) +const allRules = computed(() => { + return { ...baseRules, ...props.rules }; +}); //鐩戝惉琛ㄥ崟鍒濆鏁版嵁浼犲叆 watch( @@ -134,6 +158,8 @@ watch(edit, (nValue) => { emit('update:isEdit', nValue); }); + +defineExpose({ formObj, onSubmit, onCancel, onReset }); </script> <style scoped></style> -- Gitblit v1.9.3