一.上传文件
<el-upload
class="upload-demo"
action="https://jsonplaceholder.typicode.com/posts/"
:on-remove="handleRemove"
:show-file-list="false"
:on-success="handleAvatarSuccess"
:on-error=""
multiple
:limit="3"
:on-exceed="handleExceed"
:file-list="fileList">
<el-button size="small" type="primary">点击上传</el-button>
<div slot="tip" class="el-upload__tip">只能上传jpg/png文件,且不超过500kb</div>
</el-upload>
<script>
export default {
data() {
return {
fileList: [{name: 'food.jpeg', url: 'https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100'}, {name: 'food2.jpeg', url: 'https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100'}]
};
},
methods: {
handleAvatarSuccess(res, file) {
this.imageUrl = URL.createObjectURL(file.raw);
},
handleExceed(files, fileList) {
this.$message.warning(`当前限制选择 3 个文件,本次选择了 ${files.length} 个文件,共选择了 ${files.length + fileList.length} 个文件`);
},
beforeRemove(file, fileList) {
return this.$confirm(`确定移除 ${ file.name }?`);
}
}
}
</script>
二.跨域问题的解决,文件类型的修改
action="https://jsonplaceholder.typicode.com/posts/"
:headers="token"
token: {
Authorization: "Bearer " + localStorage.getItem("adminToken")
}
accept=".xls,.xlsx"
三.常用属性
action: 是请求后端接口的路径 (必填的)
header: 是配置请求头的 / 在此处带了token
on-change: 文件状态改变时的钩子,添加文件、上传成功和上传失败时都会被调用
on-remove: 是文件列表中移除文件时执行的
before-remove: 删除文件之前执行的,可以用作提示用户二次确认删除
limit: 是上传文件的个数
auto-upload: 是控制是否自动上传的
on-exceed: 上传文件个数超过限制的时候执行的