a标签下载特殊字符url手动编码浏览器兼容性不显示
URL字符转义编码
空格 URL中的空格可以用+号或者编码 %20
/ 分隔目录和子目录 %2F
? 分隔实际的URL和参数 %3F
% 指定特殊字符 %25
& URL 中指定的参数间的分隔符 %26
= URL 中指定参数的值 %3D
在谷歌浏览器61.0.3163.79版本会有兼容问题a标签不显示
![在这里插入图片描述](https://img-blog.csdnimg.cn/c73c815a6e2a496a80a81579b5f2ae8a.png?x
-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA5Lq657G76auY6LSo6YeP5YmN56uv,size_20,color_FFFFFF,t_70,g_se,x_16)
url = 'JPC-曹梦怡-71&81&91车型座椅机运链运输专线-专题汇报.pdf'
url = url.replaceAll('+','%2B').replaceAll(' ','%20').replaceAll('/','%2F').replaceAll('?','%3F').replaceAll('#','%23').replaceAll('&','%26').replaceAll('=','%3D')
解决方法换为blob对象下载
npm i js-file-download引入npm包
import fileDownload from 'js-file-download'
axios.get(url, {
responseType: 'blob' //返回的数据类型
})
.then(res => {
fileDownload(res.data, name)
})