From a118738d0f9e8e466aa2b908ca139372eead5194 Mon Sep 17 00:00:00 2001 From: RuoYi <yzz_ivy@163.com> Date: Tue, 5 Jan 2021 16:13:22 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8D=95=E5=9B=BE=E4=B8=8A=E4=BC=A0=E7=BB=84?= =?UTF-8?q?=E4=BB=B6=E6=B7=BB=E5=8A=A0=E7=A7=BB=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/resources/vm/vue/index-tree.vue.vm | 12 +++---- .../src/main/resources/vm/vue/index.vue.vm | 12 +++---- .../{UploadImage => ImageUpload}/index.vue | 34 +++++++++++++++++-- ruoyi-ui/src/views/tool/gen/editTable.vue | 2 +- 4 files changed, 45 insertions(+), 15 deletions(-) rename ruoyi-ui/src/components/{UploadImage => ImageUpload}/index.vue (61%) diff --git a/ruoyi-generator/src/main/resources/vm/vue/index-tree.vue.vm b/ruoyi-generator/src/main/resources/vm/vue/index-tree.vue.vm index f12eb2f..d9b6f4d 100644 --- a/ruoyi-generator/src/main/resources/vm/vue/index-tree.vue.vm +++ b/ruoyi-generator/src/main/resources/vm/vue/index-tree.vue.vm @@ -153,9 +153,9 @@ <el-form-item label="${comment}" prop="${field}"> <el-input v-model="form.${field}" placeholder="请输入${comment}" /> </el-form-item> -#elseif($column.htmlType == "uploadImage") +#elseif($column.htmlType == "imageUpload") <el-form-item label="${comment}"> - <uploadImage v-model="form.${field}"/> + <imageUpload v-model="form.${field}"/> </el-form-item> #elseif($column.htmlType == "editor") <el-form-item label="${comment}"> @@ -244,8 +244,8 @@ import { list${BusinessName}, get${BusinessName}, del${BusinessName}, add${Busin import Treeselect from "@riophae/vue-treeselect"; import "@riophae/vue-treeselect/dist/vue-treeselect.css"; #foreach($column in $columns) -#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "uploadImage") -import UploadImage from '@/components/UploadImage'; +#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "imageUpload") +import ImageUpload from '@/components/ImageUpload'; #break #end #end @@ -260,8 +260,8 @@ export default { name: "${BusinessName}", components: { #foreach($column in $columns) -#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "uploadImage") - UploadImage, +#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "imageUpload") + ImageUpload, #break #end #end diff --git a/ruoyi-generator/src/main/resources/vm/vue/index.vue.vm b/ruoyi-generator/src/main/resources/vm/vue/index.vue.vm index 534012c..ded7e2d 100644 --- a/ruoyi-generator/src/main/resources/vm/vue/index.vue.vm +++ b/ruoyi-generator/src/main/resources/vm/vue/index.vue.vm @@ -185,9 +185,9 @@ <el-form-item label="${comment}" prop="${field}"> <el-input v-model="form.${field}" placeholder="请输入${comment}" /> </el-form-item> -#elseif($column.htmlType == "uploadImage") +#elseif($column.htmlType == "imageUpload") <el-form-item label="${comment}"> - <uploadImage v-model="form.${field}"/> + <imageUpload v-model="form.${field}"/> </el-form-item> #elseif($column.htmlType == "editor") <el-form-item label="${comment}"> @@ -274,8 +274,8 @@ <script> import { list${BusinessName}, get${BusinessName}, del${BusinessName}, add${BusinessName}, update${BusinessName}, export${BusinessName} } from "@/api/${moduleName}/${businessName}"; #foreach($column in $columns) -#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "uploadImage") -import UploadImage from '@/components/UploadImage'; +#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "imageUpload") +import ImageUpload from '@/components/ImageUpload'; #break #end #end @@ -290,8 +290,8 @@ export default { name: "${BusinessName}", components: { #foreach($column in $columns) -#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "uploadImage") - UploadImage, +#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "imageUpload") + ImageUpload, #break #end #end diff --git a/ruoyi-ui/src/components/UploadImage/index.vue b/ruoyi-ui/src/components/ImageUpload/index.vue similarity index 61% rename from ruoyi-ui/src/components/UploadImage/index.vue rename to ruoyi-ui/src/components/ImageUpload/index.vue index 3941006..89f0b40 100644 --- a/ruoyi-ui/src/components/UploadImage/index.vue +++ b/ruoyi-ui/src/components/ImageUpload/index.vue @@ -11,8 +11,21 @@ :headers="headers" style="display: inline-block; vertical-align: top" > - <img v-if="value" :src="value" class="avatar" /> - <i v-else class="el-icon-plus avatar-uploader-icon"></i> + <el-image v-if="!value" :src="value"> + <div slot="error" class="image-slot"> + <i class="el-icon-plus" /> + </div> + </el-image> + <div v-else class="image"> + <el-image :src="value" /> + <div class="mask"> + <div class="actions"> + <span title="移除" @click.stop="removeImage"> + <i class="el-icon-delete" /> + </span> + </div> + </div> + </div> </el-upload> </div> </template> @@ -37,6 +50,9 @@ export default { }, }, methods: { + removeImage() { + this.$emit("input", ""); + }, handleUploadSuccess(res) { this.$emit("input", res.url); this.loading.close(); @@ -65,4 +81,18 @@ export default { width: 100%; height: 100%; } +.image { + position: relative; + .mask { + opacity: 0; + position: absolute; + top: 0; + width: 100%; + background-color: rgba(0, 0, 0, 0.5); + transition: all 0.3s; + } + &:hover .mask { + opacity: 1; + } +} </style> \ No newline at end of file diff --git a/ruoyi-ui/src/views/tool/gen/editTable.vue b/ruoyi-ui/src/views/tool/gen/editTable.vue index fea958e..a9ad5a0 100644 --- a/ruoyi-ui/src/views/tool/gen/editTable.vue +++ b/ruoyi-ui/src/views/tool/gen/editTable.vue @@ -90,7 +90,7 @@ <el-option label="å•选框" value="radio" /> <el-option label="å¤é€‰æ¡†" value="checkbox" /> <el-option label="日期控件" value="datetime" /> - <el-option label="ä¸Šä¼ æŽ§ä»¶" value="uploadImage" /> + <el-option label="å•å›¾ä¸Šä¼ " value="imageUpload" /> <el-option label="富文本控件" value="editor" /> </el-select> </template> -- 2.18.1