位置: IT常识 - 正文

antd的upload组件的各种上传、下载操作(vue)(antd upload组件)

编辑:rootadmin
antd的upload组件的各种上传、下载操作(vue)

推荐整理分享antd的upload组件的各种上传、下载操作(vue)(antd upload组件),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:antd的upload组件怎么获取文件类型,antd upload accept,antd upload组件,antd的upload组件隐藏上传按钮,antd的upload组件隐藏上传按钮,antd upload组件,antd的upload组件隐藏上传按钮,antd的upload组件隐藏上传按钮,内容如对您有帮助,希望把文章链接给更多的朋友!

  作为前端小白刚刚接触上传、下载文件的操作也让我很头疼,所以利用时间记录一下方便巩固,希望能够帮到大家。

  我将情况分为以下几种:

1.点击按钮上传单个文件//html<a-upload :action="baseUrl + '/api/uploadSingleFile'" :headers="headers" :file-list="fileList" @change="handleChange_file"> <a-button> <a-icon type="upload" /> 上传文件 </a-button></a-upload>//action表示上传的地址,baseUrl是我们公司服务器的IP地址,加上后面的接口地址就组成了完整的上传地址//headers表示设置上传的请求头部,因为是后台管理系统所以会在里面存放必要的token//file-list 就是我们上传文件的数组,一个文件就是一个数组元素//@change就是提交文件的回调//data{ baseUrl: baseUrl, headers: { accesstoken: sessionStorage.getItem("accessToken") }, fileList:[], fileList2:[]}//这里除了fileList要需要fileList2的原因是:如果上传按钮下需要展示文件列表就必须是{ url: res, status: "done", name: res, uid: index + 1,}的对象形式,我们用fileList2来存储文件的下载链接也就是fileList中url的res//methods handleChange_file(info) { let fileList = [...info.fileList]; //这一行用来决定上传文件的限制个数,-1就表示1个,-2就是2个依次类推... fileList = fileList.slice(-1); //这里判断文件是否上传成功 if (info.file.status === "done") { //判断是否正确链接上传地址 if (info.file.response.code == 0) { let arr = fileList; this.fileList2 = []; //上传成功会把接口返回的下载链接存入fileList2 arr.forEach((item) => { if (item.url) { this.fileList2.push(item.url); } else if (item.response) { this.fileList2.push(item.response.data); } }); this.$message.success(`${info.file.name} 上传成功!`); } //如果是移除文件也会重新填入fileList2 } else if (info.file.status === "removed") { let arr = fileList; this.fileList2 = []; arr.forEach((item) => { if (item.url) { this.fileList2.push(item.url); } else if (item.response) { this.fileList2.push(item.response.data); } }); } this.fileList = [...fileList]; //重点 },2.点击按钮上传多个文件antd的upload组件的各种上传、下载操作(vue)(antd upload组件)

上面就说过了,把中的数字换一下就行了。

3.上传单个按钮但是不想显示文件列表

 

antd会像这样上传成功后自动生成列表,但是有时候我们不需要,我们在a-upload下填入

:showUploadList="false"  属性就可以了

4.下载文件(单个)

一般通过动态创建a标签,给url的地址改为文件下载地址就可以了

const a = document.createElement("a"); a.href = record.filePath; document.body.appendChild(a); a.click(); document.body.removeChild(a);5.下载文件(多个)

一般是通过upload组件把文件列表展示出来,这样一点击就可以下载了

clickModel(record) { this.visible = true; this.fileList = []; let arr = record.filePath; arr.forEach((res, index) => { this.fileList.push({ url: res, status: "done", name: res, uid: index + 1, }); }); },//这里调用的是a-modal的回调让modal悬浮框显示出来同时,在文件列表中放入我们需要的文件。//一定要严格按照 url + status + name + uid 的格式。

  之后遇到新问题我会再次追加,欢迎大家讨论。

本文链接地址:https://www.jiuchutong.com/zhishi/287260.html 转载请保留说明!

上一篇:【三维目标检测】CenterPoint(一)(三维目标通用模板)

下一篇:uni-app设置开机自启动(uniapp打开系统设置)

  • 华为手机哪里下载App程序(华为手机如何下载)

  • 华为p40铃声渐强可以关闭吗(华为p40铃声渐强怎么设置在哪里)

  • 毒的平台鉴别要多久(毒一般平台鉴别需要鉴别几天)

  • 深思数盾用户许可工具是什么(深思数盾用户许可工具怎么卸载)

  • 苹果id能看见隐私吗(苹果id能看见隐藏相册吗)

  • 钢化膜全包会影响前置拍照吗(钢化膜好还是全包膜好)

  • 快手注销第三项不通过(快手注销账户是什么意思啊)

  • 步步高家教机可以换内存卡吗(步步高家教机可以看电视吗)

  • 苹果笔记本电脑删除键是哪一个(苹果笔记本电脑怎么恢复出厂设置)

  • 抖音直播有延迟怎么回事(抖音直播有延迟怎么弄)

  • 小米省电模式什么影响(小米省电模式什么时候开启比较好)

  • qq手机换绑多久生效(qq手机换绑多长时间)

  • 固态硬盘装在主机那个位置(固态硬盘装在主板上和硬盘盒区别)

  • 华为athal00什么型号(华为atr-al00什么型号)

  • 苹果手机外放音量小怎么办(苹果手机外放音质)

  • 华为p10数据线叫什么(华为p10手机数据线型号)

  • 抖音消息页关注是什么意思(抖音好友通过消息页关注)

  • 快手直播怎么显示人数(快手直播怎么显瘦怎么调节显瘦)

  • ie浏览器的页面设置在哪(ie浏览器的页面设置功能在哪里)

  • 微信拒收红包怎么操作(微信拒收红包怎么恢复)

  • iphone短信流星雨怎么搞(苹果短信流星雨)

  • 美版iphonexs max是双卡双待吗(美版iphonexs max有nfc功能吗)

  • 怎么关闭商家服务功能(怎么关闭商家服务花呗收款)

  • 怎么用浏览器扫描二维码(怎么用浏览器扫描图片)

  • 无法设置windows聚焦(无法设置面容id怎么办)

  • Win10专业版如何开启护眼模式?(win10专业版如何激活)

  • 苹果Mac OS 10.10Yosemite安装U盘制作教程图文详解(苹果mac os 10.4)

  • CVPR2023最新论文 (含语义分割、扩散模型、多模态、预训练、MAE等方向)(cvpr2017最佳论文)

  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设 电脑维修 湖南楚通运网络