如果链接是一个 表格 或者 压缩包等,
这时使用 window.open(url), 可以直接打开新窗口,将文件下载致本地
但是当链接为 PDF 或者 图片的时候,使用window.open(), 就会变成预览效果,不会自动下载。
这时如果我们想点击 直接下载
使用以下方法:
<el-link type="primary" @click="downloadImg('https://test-pic.tsingglobal.com/PN2MVj1wgbeA7m1r', '下载的图片名称')">下载</el-link>
downloadImg(url, fileName) {
const x = new window.XMLHttpRequest();
x.open('GET', url, true);
x.responseType = 'blob';
x.onload = () => {
const url = window.URL.createObjectURL(x.response);
const a = document.createElement('a');
a.href = url;
a.download = fileName;
a.click();
};
x.send();
},