vue+el-upload实现文件上传
vue
vuejs/vue: 是一个用于构建用户界面的 JavaScript 框架,具有简洁的语法和丰富的组件库,可以用于开发单页面应用程序和多页面应用程序。
项目地址:https://gitcode.com/gh_mirrors/vu/vue
·
vue+el-upload实现文件上传:
项目中遇到过需要文件上传的情况,在此简单举例单文件上传方法。
步骤:
首先了解element中的el-upload组件,本次代码选择在选取文件后自动上传的方式。
1、 搭建文件上传组件
(accept=".xlsx, .xls"限制了只能选择excel文件)
( :http-request="uploadHttpRequest"是自定义上传方法)
( :limit="1"限制选择一个文件)
(:on-remove="handleRemove"文件列表移除文件时方法)
<el-upload
ref="uploadplan"
class="upload-demo"
action=""
accept=".xlsx, .xls"
:on-remove="handleRemove"
:http-request="uploadHttpRequest"
:limit="1"
:file-list="fileList"
>
<el-button type="primary" size="small">
上传
</el-button>
</el-upload>
2、 在data中声明文件上传列表
data() {
return {
fileList: [],//上传的文件列表
}
}
3、 自定义上传方法
------------------注意看代码后的注释------------------
methods: {
//自定义上传方法
uploadHttpRequest(param) {
console.log(param.file);//查看是否选取到文件
let formData = new FormData(); //FormData对象,添加参数只能通过append('key', value)的形式添加
formData.append("id", this.tid);//添加id(这里是项目需要,根据个人情况选择是否添加)
formData.append("xxxFile", param.file); //添加文件对象
this.$axios.post("这里写接口地址",formData,{
headers: {
"Content-Type": "multipart/form-data",//配置header,我们上传的文件编码格式就是multipart/form-data
},
}).then((res)=>{
console.log(res)
})
},
// 文件列表移除文件时的钩子
handleRemove(file, fileList) {
this.$message.warning("文件已移除");
},
}
如有不足欢迎指出。
vuejs/vue: 是一个用于构建用户界面的 JavaScript 框架,具有简洁的语法和丰富的组件库,可以用于开发单页面应用程序和多页面应用程序。
最近提交(Master分支:2 个月前 )
9e887079
[skip ci] 1 年前
73486cb5
* chore: fix link broken
Signed-off-by: snoppy <michaleli@foxmail.com>
* Update packages/template-compiler/README.md [skip ci]
---------
Signed-off-by: snoppy <michaleli@foxmail.com>
Co-authored-by: Eduardo San Martin Morote <posva@users.noreply.github.com> 1 年前
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)