JS 文件下载方式

206 阅读1分钟

一. 弹出新页面下载

缺点: 用户体验较差

window.open(fileURL);

二. 当前页面下载

  • 方法1: 表单提交

缺点: get 方法如果需要传参 ?key=val&key=val 的话就无效了

let form = document.createElement('form');
form.method = 'get';
form.action = `${fileURL}`; // 如有参数的话直接拼接 `?key=val&key=val`
document.body.appendChild(form);
form.submit();
document.body.removeChild(form);
  • 方法2: window.location

缺点: 文件未找到的话, 当前页会变成后台返回的404错误页

window.location = `${fileURL}`;

注: url 不能拼接 %