vue 下载二进制文件流

设置responseType:‘blob’,属性,使接收到的数据转换成二进制流

request({
        url: "/xzjc/randomPerson/excelExport",
        method: "post",
        showloading: true,
        loadingType: 'loadPart',
        responseType:'blob',
        baseUrlType: 'XZJC_HOST',
        cancelToken: setCancelSource()
    });

导出方法

// 导出
        exportMethod(methodName) {
            this.$store.dispatch(methodName).then(res => {
                //浏览器兼容,Google和火狐支持a标签的download,IE不支持
                //其他浏览器
                let link = document.createElement('a'); // 创建a标签
                link.style.display = 'none';
                link.setAttribute('download', '检查专家表.xls')//必须要重命名
                let objectUrl = URL.createObjectURL(res);
                link.href = objectUrl;
                link.click();
                URL.revokeObjectURL(objectUrl);
            },
            ).catch(err => { console.log(err); throw new Error(err) })
        },

你可能感兴趣的:(使用说明,vue)