<el-upload
class="upload-demo"
ref="upload"
:action="uploadUrl()"
:multiple='true'
:on-remove="handleRemove"
:on-preview="handlePictureCardPreview"
accept=".jpg,.png,.gif,.txt,.doc,.docx,.xls,.xlsx,.zip,.pdf,.ppt"
:on-success="handleAvatarSuccess"
:before-upload="beforeAvatarUpload"
>
<el-button slot="trigger" size="small" type="primary">选取文件</el-button>
<a class='download' style="color: red;">上传文件只能是 jpg、png、gif、txt、doc、docx、xls、xlsx、zip、pdf、ppt格式!</a>
<a class='download' id="linkUrl" href="" download="" title="下载" style="color: red;">下载</a>
</el-upload>
后者用这种方式替换 action=“http://192.168.0.121:8004/admin/Upload/index”
uploadUrl(){
console.log(this.baseUrl)
return this.baseUrl+"/admin/Upload/index"
},
handleRemove(file, fileList) {//移除
fileList.forEach((item)=>{
this.arr=item.response.data
})
console.log(this.arr)
// this.arr=fileList
},
handleAvatarSuccess(res, file) {//图片上传成功
console.log(res, file)
this.arr.push(res.data)
console.log(this.arr)
// arr.push(res.data);
// console.log(arr)
// this.form.pictures.push(files)
// this.dialogImageUrl = this.IMAGE_URL + '/image/' + res.data.file;
},
//重新上传
clearFiles () {
this.$refs['upload'].clearFiles();
},
handlePictureCardPreview(file) {//预览
console.log(this.baseUrl+file.response.data)
this.dialogImageUrl = this.baseUrl+'\\'+file.response.data;
let link2=document.getElementById('linkUrl')
link2.href=this.baseUrl+'\\'+file.response.data;
link2.click()
},
beforeAvatarUpload(file) {//文件上传之前调用做一些拦截限制
console.log(file)
var testmsg=file.name.substring(file.name.lastIndexOf('.')+1)
console.log(testmsg)
const extension = testmsg === 'xls'
const extension2 = testmsg === 'xlsx'
const extension3 = testmsg === 'jpg'
const extension4 = testmsg === 'png'
const extension5 = testmsg === 'gif'
const extension6 = testmsg === 'txt'
const extension7 = testmsg === 'doc'
const extension8 = testmsg === 'docx'
const extension9 = testmsg === 'zip'
const extension10 = testmsg === 'pdf'
const extension11 = testmsg === 'ppt'
// const isLt2M = file.size / 1024 / 1024 < 10
if(!extension && !extension2 && !extension3 && !extension4 && !extension5&& !extension6 & !extension7 && !extension8 && !extension9 && !extension10 && !extension11) {
this.$message({
message: '上传文件只能是 jpg、png、gif、txt、doc、docx、xls、xlsx、zip、pdf、ppt格式!',
type: 'warning'
});
this.clearFiles()
}
// return !extension && !extension2 && !extension3 && !extension4 && !extension5&& !extension6 & !extension7 && !extension8 && !extension9 && !extension10 && !extension11;
// console.log(file);
// const isJPG = true;
const isLt2M = file.size / 1024 / 1024 < 2;
if (!isLt2M) {
this.$message.error('上传图片大小不能超过 2MB!');
}
// return isJPG && isLt2M;
},
handleAvatarSuccess(res, file) {//图片上传成功
console.log(res, file)
this.arr.push(res.data)
console.log(this.arr)
// arr.push(res.data);
// console.log(arr)
// this.form.pictures.push(files)
// this.dialogImageUrl = this.IMAGE_URL + '/image/' + res.data.file;
},