vue element-ui 文件上传
<el-upload class="upload-demo" action="" :before-remove="beforeRemove" :on-remove="onRemove" multiple :limit="1" :on-exceed="handleExceed" :file-list="fileList" :http-request="uploadSectionFile"> <el-button size="small" type="primary">点击上传</el-button> <!-- <div slot="tip" class="el-upload__tip">只能上传jpg/png文件,且不超过500kb</div> --> </el-upload>
js
接口:
export const uploadFile = params => { return axios.post(`${easykp_config.test}/file/upload`, params, { headers: { 'author-token-key': localStorage.getItem('token') } }).then(res => res.data); };
调用:
//文件上传 handleExceed(files, fileList) { //超出限制 this.$message.warning(`当前限制选择 1 个文件,本次选择了 ${files.length} 个文件,共选择了 ${files.length + fileList.length} 个文件`); }, beforeRemove(file, fileList) { //确定移除 return this.$confirm(`确定移除 ${ file.name }?`); }, onRemove(file, fileList) { //删除清空 // console.log(file, fileList) this.filesId = []; }, uploadSectionFile(param) { var fileObj = param.file; var formData = new FormData(); formData.append('file', fileObj); // console.log('formData',fileObj.size)可做大小限制等 uploadFile(formData).then((res) => { //请求数据 if (res.code == 200) { this.filesId.push(res.body.id); this.$message.success(`上传成功`); } else { this.$message({ message: res.message, type: 'error' }); } }); }
具体详见官方api,很详细
http://element.eleme.io/#/zh-CN/component/upload#attribute
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本