From 34415f3d4cc5c3c324126a63794eb8f2087c4edb Mon Sep 17 00:00:00 2001
From: sakuya <81883387@qq.com>
Date: Fri, 21 May 2021 00:45:05 +0800
Subject: [PATCH] up
---
src/components/scUpload/multiple.vue | 99 ++++++++++++++++++++--------
src/views/vab/upload.vue | 15 +++--
2 files changed, 81 insertions(+), 33 deletions(-)
diff --git a/src/components/scUpload/multiple.vue b/src/components/scUpload/multiple.vue
index 766213c1..932222fc 100644
--- a/src/components/scUpload/multiple.vue
+++ b/src/components/scUpload/multiple.vue
@@ -3,29 +3,36 @@
- -
-
@@ -40,28 +47,52 @@
},
data(){
return {
- defaultFileList: this.toArr(this.modelValue)
+ value: "",
+ defaultFileList: [],
+ fileList: []
}
},
watch:{
- modelValue(val){
- this.defaultFileList = this.toArr(val)
+ modelValue(){
+ this.fileList = this.modelValuetoArr
+ this.value = this.modelValue
},
- defaultFileList: {
- handler(val){
- console.log(val);
- this.$emit('update:modelValue', this.toStr(val));
+ fileList: {
+ handler(){
+ if(this.isAllSuccess){
+ this.$emit('update:modelValue', this.fileListtoStr);
+ }
},
- //deep: true
+ deep: true
}
},
computed: {
+ modelValuetoArr(){
+ return this.toArr(this.modelValue)
+ },
+ fileListtoStr(){
+ return this.toStr(this.fileList)
+ },
preview(){
- return this.defaultFileList.map(v => v.url)
+ return this.fileList.map(v => v.url)
+ },
+ isAllSuccess(){
+ var all_length = this.fileList.length;
+ var success_length = 0
+ this.fileList.forEach(item => {
+ if(item.status == "success"){
+ success_length += 1
+ }
+ })
+
+ return success_length == all_length
+
}
},
mounted() {
-
+ this.defaultFileList = this.toArr(this.modelValue);
+ this.fileList = this.toArr(this.modelValue)
+ this.value = this.modelValue
},
methods: {
//默认值转换为数组
@@ -83,7 +114,9 @@
toStr(arr){
var _arr = [];
arr.forEach(item => {
- _arr.push(item.url)
+
+ _arr.push(item.url)
+
})
var str = _arr.join(",")
return str;
@@ -91,12 +124,9 @@
before(){
},
- change(file){
- if(file.status =='ready'){
- file.aa = "123"
- file.url = URL.createObjectURL(file.raw);
- this.defaultFileList.push(file)
- }
+ change(file, fileList){
+ file.tempImg = URL.createObjectURL(file.raw);
+ this.fileList = fileList
},
success(res, file){
file.url = res.data.src
@@ -114,8 +144,8 @@
})
},
del(index){
- this.defaultFileList.splice(index, 1);
- this.$refs.upload.uploadFiles.splice(index-this.defaultFileList.length-1, 1);
+ this.fileList.splice(index, 1);
+ this.$refs.upload.uploadFiles.splice(index-this.fileList.length-1, 1);
}
}
}
@@ -123,19 +153,34 @@