本文写了一个ts封装的小方法,download下载功能的实现,
首先建立一个ts文件:
import axios from 'axios'
//post 下载
export const download = (url: string, obj: any, fileName: string, format: string): void => {
axios.request({ method:'post', url: url, data: obj, responseType:'arraybuffer' }).then((response: any) => {
let data: any = response.data
if (!data) {
return
}
let url = window.URL.createObjectURL(new Blob([data]))
let link = document.createElement('a')
link.style.display = 'none'
link.href = url
link.download = fileName + format; //下载后文件名
link.setAttribute('download', fileName + format)
document.body.appendChild(link)
link.click()
})
}
download = (url: string, obj: any, fileName: string, format: string): void
参数: {
url: 下载地址
obj: 参数对象
fileName: 文件名称
format: 下载的文件格式
}
eg: download(‘https://www.baidu.com/’, { id: 14138 }, ‘这是个文件’, ‘.txt’)
本文地址:https://blog.csdn.net/m0_45043105/article/details/107559390
如对本文有疑问, 点击进行留言回复!!
牛客编程巅峰赛S1第6场 - 黄金&钻石&王者题解
纵横字谜的答案 Crossword Answers, ACM/ICPC World Finals 1994, UVa232
HDU - 5880 Family View (AC自动机修改母串)
iOS14Beta3续航怎么样 iOS14Beta3续航能力介绍
iOS14Beta3稳定性怎么样 iOS14Beta3升级建议介绍
网友评论