最近有个项目要求pdf文件下载而不是pdf预览。
搜索了一下发现是因为pdf所在域名和网站域名不同导致无法下载,于是找了一个插件实现了需要的效果。
安装依赖
npm install web-downloadfile --save
使用实例
base64ToFileOrBlob
主要针对图片 base64转blob对象 或 直接下载文件 但是文件也可用
import { base64ToFileOrBlob } from 'web-downloadfile';
let Blob = base64ToFileOrBlob(base64,'',true);
// or
base64ToFileOrBlob(base64,'',false);
saveFileToBlob
主要用于文件导出下载 支持大部分文件类型 但是文件类型必传
import { saveFileToBlob } from 'web-downloadfile';
saveFileToBlob(Blob,'test','xlsx');
saveFileToLink
主要pdf文件链接的下载 因为pdf文件链接在浏览器会直接打开 但是其他文件的链接也可以下载 可监听文件下载进度
link必须允许跨越访问 否则无法下载
import { saveFileToLink } from 'web-downloadfile';
saveFileToLink(link,'test','jpg',fn);