vue 通过blob下载流文件

         let blob = new Blob([res.data], { type: 'application/vnd.ms-excel' }); //以xls文件为例
         //浏览器兼容,Google和火狐支持a标签的download,IE不支持
          if (window.navigator && window.navigator.msSaveBlob) {
            //IE浏览器、微软浏览器
            /* 经过测试,微软浏览器Microsoft Edge下载文件时必须要重命名文件才可以打开,
              IE可不重命名,以防万一,所以都写上比较好 */
            window.navigator.msSaveBlob(blob, '订单.xls');
          } else {
            //其他浏览器
            let link = document.createElement('a'); // 创建a标签
            link.style.display = 'none';
            let objectUrl = URL.createObjectURL(blob);
            link.href = objectUrl;
            link.click();
            URL.revokeObjectURL(objectUrl);
          }

注意 一定要加 responseType: 'blob',

export function exportOrderList(data) {
  return request({
    url: '/xxxxx,
    method: 'get',
    responseType: 'blob',
    params: data
  })
}

你可能感兴趣的:(vue 通过blob下载流文件)