关于下载文件上传文件
1 2 3 4 5 6 7 8 9 | <a-upload :customRequest= "customRequest" :multiple= "true" :showUploadList= "false" name= "file" v- if = "hasPerm('sysFileInfo:upload')" > <a-button> <a-icon type= "upload" />上传文件</a-button> </a-upload> |
js
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | /** * 上传文件 */ customRequest (data) { const formData = new FormData() formData.append( 'file' , data.file) sysFileInfoUpload(formData).then((res) => { if (res.success) { this .$message.success( '上传成功' ) this .$refs.table.refresh() } else { this .$message.error( '上传失败:' + res.message) } }) }, |
1 | Blob转换 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | downloadfile (res) { var blob = new Blob([res.data], { type: 'application/octet-stream;charset=UTF-8' }) var contentDisposition = res.headers[ 'content-disposition' ] var patt = new RegExp( 'filename=([^;]+\\.[^\\.;]+);*' ) var result = patt.exec(contentDisposition) var filename = result[1] var downloadElement = document.createElement( 'a' ) var href = window.URL.createObjectURL(blob) // 创建下载的链接 var reg = /^[ "](.*)[" ]$/g downloadElement.style.display = 'none' downloadElement.href = href downloadElement.download = decodeURI(filename.replace(reg, '$1' )) // 下载后文件名 document.body.appendChild(downloadElement) downloadElement.click() // 点击下载 document.body.removeChild(downloadElement) // 下载完成移除元素 window.URL.revokeObjectURL(href) }, |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通