Vue下载blob类型的excel文件:

1.思路:

Vue下载blob类型的excel文件:_第1张图片

1.请求时加上 responseType: 'blob',
2.处理并下载
2.案例:
// 获取收货单位的导入模板 /api/consignee/getTemplate   get
export const consigneeGetTemplate = (data) => {
    return request({
        url: '/api/consignee/getTemplate',
        methods: 'get',
        data,
        responseType: 'blob',//这个不能少
        // responseType: 'arraybuffer',//blob arraybuffer
        // headers: {'Content-type': 'application/json;charset=utf-8'}
    })
};
// 下载模板
async downloadTemplate() {
    let param = {code: ''}
    let res = await consigneeGetTemplate(param);

    const blob = new Blob([res.data], { type: "application/excel" });
    const url = window.URL.createObjectURL(blob);
    const link = document.createElement("a"); // 创建a标签
    link.href = url;
    link.download = decodeURIComponent('客户管理导入模板.xls');// 文件重命名,若无需重命名,将该行删去
    link.click();
    URL.revokeObjectURL(url); // 释放内存
},

你可能感兴趣的:(Vue框架,vue.js,前端,javascript)