From 6b36385fa55a97144819e9cd6afc62f9314db438 Mon Sep 17 00:00:00 2001 From: CrazyLionLi <31852897+JavaLionLi@users.noreply.github.com> Date: 星期一, 18 四月 2022 20:01:57 +0800 Subject: [PATCH] fix 修复图片上传组件 数据异常问题 --- src/components/ImageUpload/index.vue | 34 ++++++++-------------------------- 1 files changed, 8 insertions(+), 26 deletions(-) diff --git a/src/components/ImageUpload/index.vue b/src/components/ImageUpload/index.vue index adc0428..6dc2e25 100644 --- a/src/components/ImageUpload/index.vue +++ b/src/components/ImageUpload/index.vue @@ -105,22 +105,18 @@ fileList.value = []; return []; } -}); +},{ deep: true, immediate: true }); // 鍒犻櫎鍥剧墖 function handleRemove(file, files) { - const findex = fileList.value.map(f => f.name).indexOf(file.name); - if (findex > -1) { - fileList.value.splice(findex, 1); - emit("update:modelValue", listToString(fileList.value)); - } + emit("update:modelValue", listToString(fileList.value)); } // 涓婁紶鎴愬姛鍥炶皟 function handleUploadSuccess(res) { uploadList.value.push({ name: res.fileName, url: res.fileName }); if (uploadList.value.length === number.value) { - fileList.value = fileList.value.concat(uploadList.value); + fileList.value = fileList.value.filter(f => f.url !== undefined).concat(uploadList.value); uploadList.value = []; number.value = 0; emit("update:modelValue", listToString(fileList.value)); @@ -157,7 +153,7 @@ return false; } } - proxy.$modal.loading("涓婁紶涓�"); + proxy.$modal.loading("姝e湪涓婁紶鍥剧墖锛岃绋嶅��..."); number.value++; } @@ -168,7 +164,7 @@ // 涓婁紶澶辫触 function handleUploadError() { - proxy.$modal.msgError("涓婁紶澶辫触"); + proxy.$modal.msgError("涓婁紶鍥剧墖澶辫触"); proxy.$modal.closeLoading(); } @@ -183,24 +179,10 @@ let strs = ""; separator = separator || ","; for (let i in list) { - strs += list[i].url.replace(baseUrl, "") + separator; + if (undefined !== list[i].url && list[i].url.indexOf("blob:") !== 0) { + strs += list[i].url.replace(baseUrl, "") + separator; + } } return strs != "" ? strs.substr(0, strs.length - 1) : ""; } </script> - -<style scoped lang="scss"> -// .el-upload--picture-card 鎺у埗鍔犲彿閮ㄥ垎 -:deep(.hide .el-upload--picture-card) { - display: none; -} -// 鍘绘帀鍔ㄧ敾鏁堟灉 -:deep(.el-list-enter-active), -:deep(.el-list-leave-active) { - transition: all 0s; -} -:deep(.el-list-enter, .el-list-leave-active) { - opacity: 0; - transform: translateY(0); -} -</style> \ No newline at end of file -- Gitblit v1.9.3