From cc993ff4b559a937f6ceaf01c7e77e1d6b50baa1 Mon Sep 17 00:00:00 2001 From: Ldc <ldc@vci.com> Date: 星期二, 16 四月 2024 10:53:34 +0800 Subject: [PATCH] 1、修改form表单上传方式 --- Source/ProjectWeb/src/components/dynamic-components/dynamic-form.vue | 99 +++++++++++++++++++++++++++---------------------- 1 files changed, 54 insertions(+), 45 deletions(-) diff --git a/Source/ProjectWeb/src/components/dynamic-components/dynamic-form.vue b/Source/ProjectWeb/src/components/dynamic-components/dynamic-form.vue index 9641b5f..99b4527 100644 --- a/Source/ProjectWeb/src/components/dynamic-components/dynamic-form.vue +++ b/Source/ProjectWeb/src/components/dynamic-components/dynamic-form.vue @@ -1,5 +1,5 @@ <template> - <div class="UI-dynamic" :id="'UI-dynamic-'+areasName+componentVO.oid"> + <div :id="'UI-dynamic-'+areasName+componentVO.oid" class="UI-dynamic"> <avue-form v-model="form" :option="option"> <template v-for="item in slotData" :slot="item.prop + 'Label'"> <span> @@ -16,13 +16,13 @@ </span> </template> <template slot="menuForm"> - <dynamic-button type="form" :butttonList="componentVO.buttons" @buttonClick="buttonClick"></dynamic-button> + <dynamic-button :componentVO="componentVO" :butttonList="componentVO.buttons" :dataStore="[form]" :sourceData="sourceData" type="form" @buttonClick="buttonClick"></dynamic-button> </template> <template v-for="item in slotData" :slot="item.prop + ''"> <vciWebRefer v-if="item.type == 'refer'" :key="item.prop" - referType="master" + :ref="'referFormRef'+item.prop" :data-key="item.prop" :disabled="item.disabled || false" :display="item.display || true" @@ -30,8 +30,8 @@ :reloadFormKey="(item.referConfig.useFormKey && item.referConfig.formValues && item.referConfig.formValues[item.referConfig.useFormKey]) || ''" :text="item.referConfig.showProp" :value="item.prop || item.value" - @setReferValue="setReferValue" - :ref="'referFormRef'+item.prop"> + referType="master" + @setReferValue="setReferValue"> </vciWebRefer> </template> @@ -40,13 +40,22 @@ </template> <script> -import vciWebRefer from '@/components/refer/vciWebRefer' + import VciWebRefer from "@/components/refer/vciWebRefer"; import {verifyNull, verifySlash} from "@/util/validate"; + export default { name: "dynamic-form", components: {VciWebRefer}, props: { + //ui涓婁笅鏂囩殑涓氬姟绫诲瀷锛堟垨閾炬帴绫诲瀷锛� + uiBtmType: { + type: String + }, + //ui涓婁笅鏂� + uiContext:{ + type: String + }, componentVO: { type: Object, default: {} @@ -59,14 +68,14 @@ type: String, default: '' }, - sourceData:{ + sourceData: { //鎵�灞炲尯鍩熺殑涓婁竴鍖哄煙閫変腑鏁版嵁 - type:Object, + type: Object, default: {} }, - dataStore:{ + dataStore: { //寮圭獥鏃舵寜閽墍灞炲尯鍩熼�変腑鏁版嵁 - type:Array, + type: Array, default: [] }, paramVOS: { @@ -81,7 +90,7 @@ }, data() { return { - form: {} + form: {}, } }, mounted() { @@ -99,10 +108,10 @@ return this.getColumnData() } }, - watch:{ - slotData:{ - handler(newV){ - this.getDictList(newV) + watch: { + slotData: { + handler(newV) { + this.getDictList(newV) }, immediate: true, }, @@ -129,7 +138,7 @@ deep: true, immediate: true, }, - sourceData:{ + sourceData: { handler(newval) { //婧愭暟鎹湁鍙樺寲鏃跺彉鏇村綋鍓嶅尯鍩熸暟鎹� console.log(this.areasName); @@ -140,39 +149,39 @@ methods: { //杞寲鏁版嵁 formColumn(formList) { - return formList.map(item => { - const typeValue = item.type === 'text' ? 'input' : item.type === 'combox' ? 'select' : item.type; + return formList.map(item => { + const typeValue = item.type === 'text' ? 'input' : item.type === 'combox' ? 'select' : item.type; - const focusFunc = item.type === 'refer' ? (i) => { + const focusFunc = item.type === 'refer' ? (i) => { - } : undefined; + } : undefined; - return { - label: item.text, - prop: item.field, - type: typeValue, - labelWidth:item.text.length >= 6 ? 115 : 90, - value: item.defaultValue, - dicData: item.type === 'combox' ? item.dicData : item.dicUrl, - readonly: item.readOnly, - disabled: item.disabled, - display: !item.hidden, - labelSuffix: item.suffix, - suffixIcon: item.prefix, - placeholder: item.placeholder, - clearable: item.clearable, - tip: item.tooltips, - keyAttr: item.keyAttr, - focus:focusFunc, - referConfig:item.referConfig, - rules: [{ - required: item.required, - message: `璇疯緭鍏�${item.text}!`, - trigger: "blur" - }] - }; - }); + return { + label: item.text, + prop: item.field, + type: typeValue, + labelWidth: item.text.length >= 6 ? 115 : 90, + value: item.defaultValue, + dicData: item.type === 'combox' ? item.dicData : item.dicUrl, + readonly: item.readOnly, + disabled: item.disabled, + display: !item.hidden, + labelSuffix: item.suffix, + suffixIcon: item.prefix, + placeholder: item.placeholder, + clearable: item.clearable, + tip: item.tooltips, + keyAttr: item.keyAttr, + focus: focusFunc, + referConfig: item.referConfig, + rules: [{ + required: item.required, + message: `璇疯緭鍏�${item.text}!`, + trigger: "blur" + }] + }; + }); }, //鏁版嵁鍒ょ┖ -- Gitblit v1.9.3