vue下载excle表格

2021-01-05  本文已影响0人  Pluto_7a23

今天用的是一个 npm install js-file-download 包
下载 npm install js-file-download --save

that.$axios.post(‘接口的链接’, {responseType: 'blob',//类型,data:{需要传递字段}})
                .then(function(res){
                        fileDownload(res.data,'safa.xlsx')
                })

fileDownload()俩个参数 一个是需要返回的文件流,一个是文件名称。
/////////////////////上面这个削微有一点小毛病 后来我用的下面的方法 后端传回来的是base64的文件流

//将base64文件转换成blob文件流
 function dataURLtoBlob(base64Str) {
                            var bstr = atob(base64Str), n = bstr.length, u8arr = new Uint8Array(n);
                            while (n--) {
                                u8arr[n] = bstr.charCodeAt(n);
                            }
                            return new Blob([u8arr], { type: "application/vnd.ms-excel" });
                        }
 var blob = dataURLtoBlob(str);//传入base64文件
  var downloadUrl = window.URL.createObjectURL(blob);//转换
    //添加一个a标签,利用a标签打开表格              
 var anchor = document.createElement("a");
       anchor.href = downloadUrl;
       anchor.download = decodeURI('表格.xlsx');
       anchor.click();
上一篇下一篇

猜你喜欢

热点阅读