开发时遇到使用elementui上传组件时无论成功与否都会进入on-sucess回调的问题,且接口返回上传失败仍然会显示在文件列表
解决办法:
通过refs可以看到页面显示的上传列表再uploadFiles数组里,因此只需判断response里后端返回的状态码,通过refs处理这个数组即可让页面上不显示上传失败的文件
handleUploadSuccess(response, file, fileList) {
console.log(response);
console.log(this.$refs.uploadFile);
if (response.code == 200) {
this.$message.success('上传成功')
this.fileList.push({
name:response.filename,
url:response.headpath
})
} else {
this.$message.error(response.msg)
//删除上传失败的文件
this.$refs.uploadFile.uploadFiles.splice(this.$refs.uploadFile.uploadFiles.indexOf(response), 1);
}
},