From f99fd9cb7de019e0c1927820c196a52421f995fb Mon Sep 17 00:00:00 2001
From: lwh <2679599887@qq.com>
Date: Mon, 24 Jul 2023 21:27:52 +0800
Subject: [PATCH] =?UTF-8?q?fixed=20=E4=BF=AE=E6=94=B9=E5=9B=BE=E7=89=87?=
=?UTF-8?q?=E4=B8=8A=E4=BC=A0=E7=BB=84=E4=BB=B6=E5=8F=AF=E4=BB=A5=E4=B8=8A?=
=?UTF-8?q?=E4=BC=A0=E8=A7=86=E9=A2=91=E5=B9=B6=E4=B8=94=E9=A2=84=E8=A7=88?=
=?UTF-8?q?=EF=BC=8C=E4=BF=AE=E6=94=B9=E5=90=8E=E5=8F=B0=E5=95=86=E5=93=81?=
=?UTF-8?q?=E5=88=97=E8=A1=A8=E9=A1=B5=E9=94=80=E9=87=8F=E5=B1=95=E7=A4=BA?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/components/ImageUpload/index.vue | 69 +++++++++++++------
.../business/GoodsManager/Goodss/index.vue | 6 +-
2 files changed, 54 insertions(+), 21 deletions(-)
diff --git a/src/components/ImageUpload/index.vue b/src/components/ImageUpload/index.vue
index 2cb8689..8df0ae1 100644
--- a/src/components/ImageUpload/index.vue
+++ b/src/components/ImageUpload/index.vue
@@ -1,24 +1,12 @@
-
-
+
+
+
+
@@ -33,7 +21,13 @@
-
+
+
+
+
+
+
@@ -130,9 +124,27 @@ function handleUploadSuccess(res) {
number.value = 0
emit('update:modelValue', listToString(fileList.value))
}
+ updateVideoDom()
proxy.$modal.closeLoading()
}
+function updateVideoDom() {
+ setTimeout(() => {
+ Array.prototype.slice.call(document.getElementsByClassName('is-success'))
+ .filter(item => item.className.indexOf('el-upload-list__item') !== -1)
+ .map(item => {
+ let tag = item.getElementsByClassName('el-upload-list__item-thumbnail')[0];
+ if (isVideo(tag.getAttribute('src'))) {
+ let attr = [tag.getAttribute('class'), tag.getAttribute('src')];
+ let videoTag = document.createElement('video');
+ videoTag.setAttribute('class', attr[0]);
+ videoTag.setAttribute('src', attr[1]);
+ item.replaceChild(videoTag, tag);
+ }
+ });
+ },)
+}
+
// 上传前loading加载
function handleBeforeUpload(file) {
let isImg = false
@@ -192,6 +204,23 @@ function listToString(list, separator) {
}
return strs != '' ? strs.substr(0, strs.length - 1) : ''
}
+
+const getFileExtension = (filename) => {
+ return filename.slice(filename.lastIndexOf('.'));
+};
+
+const isImage = (value) => {
+ const imageExtensions = ['.png', '.jpg', '.jpeg'];
+ const extension = getFileExtension(value);
+ return imageExtensions.includes(extension.toLowerCase());
+};
+
+const isVideo = (value) => {
+ const videoExtensions = ['.mp4', '.avi', '.mov', '.wmv', '.flv', '.mkv', '.mpeg', '.3gp', '.webm', '.vob', '.rm', '.rmvb'];
+ const extension = getFileExtension(value);
+ return videoExtensions.includes(extension.toLowerCase());
+};
+