From af6a08398e2bc22f3c8a3a615cbd9e23190be906 Mon Sep 17 00:00:00 2001 From: 疯狂的狮子li <15040126243@163.com> Date: 星期四, 12 五月 2022 10:55:44 +0800 Subject: [PATCH] update 优化 文件与图片上传组件 使用id存储回显 --- ruoyi-ui/src/components/ImageUpload/index.vue | 35 +++++++++++++++++++++++------------ 1 files changed, 23 insertions(+), 12 deletions(-) diff --git a/ruoyi-ui/src/components/ImageUpload/index.vue b/ruoyi-ui/src/components/ImageUpload/index.vue index 2d1ed57..6219979 100644 --- a/ruoyi-ui/src/components/ImageUpload/index.vue +++ b/ruoyi-ui/src/components/ImageUpload/index.vue @@ -44,7 +44,7 @@ <script> import { getToken } from "@/utils/auth"; -import { delOss } from "@/api/system/oss"; +import { listByIds, delOss } from "@/api/system/oss"; export default { props: { @@ -87,19 +87,21 @@ }, watch: { value: { - handler(val) { + async handler(val) { if (val) { // 棣栧厛灏嗗�艰浆涓烘暟缁� - const list = Array.isArray(val) ? val : this.value.split(','); + let list; + if (Array.isArray(val)) { + list = val; + } else { + await listByIds(val).then(res => { + list = res.data; + }) + } // 鐒跺悗灏嗘暟缁勮浆涓哄璞℃暟缁� this.fileList = list.map(item => { - // 瀛楃涓插洖鏄惧鐞� 濡傛灉姝ゅ瀛樼殑鏄痷rl鍙洿鎺ュ洖鏄� 濡傛灉瀛樼殑鏄痠d闇�瑕佽皟鐢ㄦ帴鍙f煡鍑烘潵 - if (typeof item === "string") { - item = { name: item, url: item }; - } else { - // 姝ゅname浣跨敤ossId 闃叉鍒犻櫎鍑虹幇閲嶅悕 - item = { name: item.ossId, url: item.url, ossId: item.ossId }; - } + // 姝ゅname浣跨敤ossId 闃叉鍒犻櫎鍑虹幇閲嶅悕 + item = { name: item.ossId, url: item.url, ossId: item.ossId }; return item; }); } else { @@ -125,7 +127,7 @@ let ossId = this.fileList[findex].ossId; delOss(ossId); this.fileList.splice(findex, 1); - this.$emit("input", this.fileList); + this.$emit("input", this.listToString(this.fileList)); } }, // 涓婁紶鎴愬姛鍥炶皟 @@ -136,7 +138,7 @@ this.fileList = this.fileList.concat(this.uploadList); this.uploadList = []; this.number = 0; - this.$emit("input", this.fileList); + this.$emit("input", this.listToString(this.fileList)); this.$modal.closeLoading(); } } else { @@ -189,6 +191,15 @@ this.dialogImageUrl = file.url; this.dialogVisible = true; }, + // 瀵硅薄杞垚鎸囧畾瀛楃涓插垎闅� + listToString(list, separator) { + let strs = ""; + separator = separator || ","; + for (let i in list) { + strs += list[i].ossId + separator; + } + return strs != "" ? strs.substr(0, strs.length - 1) : ""; + }, } }; </script> -- Gitblit v1.9.3