| 
					
				 | 
			
			
				@@ -2,6 +2,7 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   <div class="component-upload-image"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     <el-upload 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       multiple 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      :disabled="disabled" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       :action="uploadImgUrl" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       list-type="picture-card" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       :on-success="handleUploadSuccess" 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -15,16 +16,20 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       :headers="headers" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       :file-list="fileList" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       :on-preview="handlePictureCardPreview" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      :class="{hide: this.fileList.length >= this.limit}" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      :class="{ hide: this.fileList.length >= this.limit }" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       <i class="el-icon-plus"></i> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     </el-upload> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     <!-- 上传提示 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     <div class="el-upload__tip" slot="tip" v-if="showTip"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       请上传 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      <template v-if="fileSize"> 大小不超过 <b style="color: #f56c6c">{{ fileSize }}MB</b> </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      <template v-if="fileType"> 格式为 <b style="color: #f56c6c">{{ fileType.join("/") }}</b> </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <template v-if="fileSize"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        大小不超过 <b style="color: #f56c6c">{{ fileSize }}MB</b> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <template v-if="fileType"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        格式为 <b style="color: #f56c6c">{{ fileType.join("/") }}</b> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       的文件 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -55,7 +60,7 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // 大小限制(MB) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     fileSize: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-       type: Number, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      type: Number, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       default: 5, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // 文件类型, 例如['png', 'jpg', 'jpeg'] 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -66,8 +71,13 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // 是否显示提示 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     isShowTip: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       type: Boolean, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      default: true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      default: true, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 是否禁用 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    disabled: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      type: Boolean, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      default: false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   data() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     return { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -81,7 +91,7 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       headers: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         Authorization: "Bearer " + getToken(), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      fileList: [] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      fileList: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   watch: { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -89,14 +99,14 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       handler(val) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (val) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           // 首先将值转为数组 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          const list = Array.isArray(val) ? val : this.value.split(','); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          const list = Array.isArray(val) ? val : this.value.split(","); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           // 然后将数组转为对象数组 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          this.fileList = list.map(item => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.fileList = list.map((item) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (typeof item === "string") { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				               if (item.indexOf(this.baseUrl) === -1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  item = { name: this.baseUrl + item, url: this.baseUrl + item }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                item = { name: this.baseUrl + item, url: this.baseUrl + item }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				               } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  item = { name: item, url: item }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                item = { name: item, url: item }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				               } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             return item; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -107,8 +117,8 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       deep: true, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      immediate: true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      immediate: true, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   computed: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // 是否显示提示 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -119,8 +129,8 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   methods: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // 删除图片 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     handleRemove(file, fileList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      const findex = this.fileList.map(f => f.name).indexOf(file.name); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      if(findex > -1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const findex = this.fileList.map((f) => f.name).indexOf(file.name); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (findex > -1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         this.fileList.splice(findex, 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         this.$emit("input", this.listToString(this.fileList)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -144,7 +154,7 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (file.name.lastIndexOf(".") > -1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           fileExtension = file.name.slice(file.name.lastIndexOf(".") + 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        isImg = this.fileType.some(type => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        isImg = this.fileType.some((type) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           if (file.type.indexOf(type) > -1) return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           if (fileExtension && fileExtension.indexOf(type) > -1) return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           return false; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -154,7 +164,9 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (!isImg) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        this.$modal.msgError(`文件格式不正确, 请上传${this.fileType.join("/")}图片格式文件!`); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.$modal.msgError( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          `文件格式不正确, 请上传${this.fileType.join("/")}图片格式文件!` 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        ); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (this.fileSize) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -188,25 +200,25 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       for (let i in list) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         strs += list[i].url.replace(this.baseUrl, "") + separator; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      return strs != '' ? strs.substr(0, strs.length - 1) : ''; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      return strs != "" ? strs.substr(0, strs.length - 1) : ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 </script> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 <style scoped lang="scss"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 // .el-upload--picture-card 控制加号部分 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 ::v-deep.hide .el-upload--picture-card { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    display: none; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  display: none; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 // 去掉动画效果 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 ::v-deep .el-list-enter-active, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 ::v-deep .el-list-leave-active { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    transition: all 0s; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  transition: all 0s; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-::v-deep .el-list-enter, .el-list-leave-active { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    opacity: 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    transform: translateY(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+::v-deep .el-list-enter, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+.el-list-leave-active { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  opacity: 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  transform: translateY(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 </style> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 |