From a38a1ac77bb6ac9ea8bf0cf5f5f6b68d0e6e6974 Mon Sep 17 00:00:00 2001 From: jinlin <jinlin> Date: 星期二, 02 一月 2024 08:44:10 +0800 Subject: [PATCH] 修改 --- web/src/components/config-uploader/src/config-uploader.vue | 69 +++++++++++++++++++++++----------- 1 files changed, 47 insertions(+), 22 deletions(-) diff --git a/web/src/components/config-uploader/src/config-uploader.vue b/web/src/components/config-uploader/src/config-uploader.vue index 1e5fe8e..956ed4e 100644 --- a/web/src/components/config-uploader/src/config-uploader.vue +++ b/web/src/components/config-uploader/src/config-uploader.vue @@ -27,33 +27,34 @@ </el-table> </el-collapse-item> </el-collapse> - <div v-else class="config-uploader" v-model="activeNames" > + <div v-else class="config-uploader" v-model="activeNames"> <div v-for="group in (oss.groups || [])" :key="group.busiFieldGroup"> <!-- <zt-form-item :label="field.busiFieldName" :prop="field.busiField" v-for="field in group.fields" :key="field.busiField" :rules="field.isRequired ? 'required':''" style="width: 100%;"> <zt-uploader v-model="dataForm[field.busiField]" multiple :limit="field.fileLimit" :file-type="field.fileType" :accept="field.accept" :file-size="field.fileSize" @input="change(field.busiField)"/> </zt-form-item>--> - <template slot="title"> - <el-tag>{{group.busiFieldGroup}}</el-tag> - </template> +<!-- <template slot="title">--> +<!-- <el-tag>{{group.busiFieldGroup}}</el-tag>--> +<!-- </template>--> <!-- <zt-form-item :label="field.busiFieldName" :prop="field.busiField" v-for="field in group.fields" :key="field.busiField" :rules="field.isRequired ? 'required':''" style="width: 100%;"> <zt-uploader v-model="dataForm[field.busiField]" multiple :limit="field.fileLimit" :file-type="field.fileType" :accept="field.accept" :file-size="field.fileSize" @input="change(field.busiField)"/> </zt-form-item>--> <el-table :data="group.fields" :show-header="false"> - <el-table-column width="180" style="text-align: left;white-space:nowrap;"> - <template slot-scope="scope"> - <span v-html="(scope.row.isRequired?'<font color=red>* </font>':'')+ scope.row.busiFieldName"></span> - </template> - </el-table-column> +<!-- <el-table-column width="180" style="text-align: left;white-space:nowrap;">--> +<!-- <template slot-scope="scope">--> +<!-- <span v-html="(scope.row.isRequired?'<font color=red>* </font>':'')+ scope.row.busiFieldName"></span>--> +<!-- </template>--> +<!-- </el-table-column>--> <el-table-column align="left"> <template slot-scope="scope"> <zt-uploader v-model="dataForm[scope.row.busiField]" :dataForm="dataForm" multiple + :lineHeight="lineHeight" :limit="scope.row.fileLimit" :file-type="scope.row.fileTypeArr" :showFileList2="false" :accept="scope.row.accept" :file-size="scope.row.fileSize" - @input="change(scope.row.busiField)"/> + @input="change(scope.row.busiField)" @getUploaderImg="getUploaderImg"/> </template> </el-table-column> </el-table> @@ -68,6 +69,14 @@ name: 'ConfigUploader', components: {}, props: { + busiTypeVarName: { + type : String, + default:'files' + }, + lineHeight:{ + type:Boolean, + default:false + }, value: Object, dataForm: Object, busiType: String // 涓氬姟绫诲瀷 @@ -81,14 +90,14 @@ computed: { fields() { let arr = [] - if (this.dataForm.files && this.dataForm.files.groups) { - this.dataForm.files.groups.forEach(group => { + if (this.value && this.value.groups) { + console.log(this.dataForm,"fields this.dataForm") + this.value.groups.forEach(group => { group.fields.forEach(field => { let arrType = [] if (field.fileTypes) { arrType = field.fileTypes.split(',') } - //this.$set(field, 'fileTypeArr', arrType) field.fileTypeArr = arrType arr.push(field) }) @@ -104,9 +113,8 @@ ...this.getOss(), ...(val || {}) } - // this.dataForm.files = this.oss - this.$set(this.dataForm, 'files', this.oss) - + this.$set(this.dataForm, this.busiTypeVarName, this.oss) + console.log(this.fields, 'watch this.fields') // 鍒嗚В鍒版瘡涓瓧娈电粰dataForm璧嬪�� this.fields.forEach(field => { // this.dataForm[field.busiField] = field.files @@ -121,8 +129,7 @@ this.oss.groups.forEach(group => { this.activeNames.push(group.busiFieldGroup) }) - // this.dataForm.files = this.oss - this.$set(this.dataForm, 'files', this.oss) + this.$set(this.dataForm, this.busiTypeVarName, this.oss) } }, methods: { @@ -139,21 +146,38 @@ field.fileTypeArr = arrType }) }) - console.log(JSON.parse(JSON.stringify(arr[0])),'JSON.parse(JSON.stringify(arr[0]))') + console.log(JSON.parse(JSON.stringify(arr[0])), 'JSON.parse(JSON.stringify(arr[0]))') return JSON.parse(JSON.stringify(arr[0])) } return null }, + getUploaderImg(list) { + // this.imageList = list + if (list[0].url) { + this.$emit('getImageUrl', list[0].url) + } + }, change(busiField) { + console.log(busiField,this.uploadList, 'config_uploader change(busiField) busiField') + console.log(this.fields, 'change this.fields') + if (!Array.isArray(this.dataForm[busiField])) { + this.$set(this.dataForm, busiField, []) + } this.fields.forEach(field => { if (field.busiField === busiField) { field.files.length = 0 - this.dataForm[busiField].forEach(file => field.files.push(file)) + this.dataForm[busiField].forEach(file => { + field.files.push(file) + } + ) if (this.dataForm) { this.dataForm.hasUploadFinsh = 100 } + console.log(this.dataForm[busiField], 'config_uploader change(busiField) this.dataForm[busiField]') } }) + console.log(this.dataForm, 'config_uploader change(busiField)') + this.$emit('getImageUrl') } } } @@ -162,7 +186,8 @@ .config-uploader label { width: 260px !important; } - .zt .el-upload-list__item .el-progress{ - top:15px !important; + + .zt .el-upload-list__item .el-progress { + top: 15px !important; } </style> -- Gitblit v1.9.1