1.首先封装了下载文件get请求方式,其中用element-ui 的提示信息Message,文件引入

import axios from "axios";

import {Message} from 'element-ui';

// 封装下载请求 返回文件流

export function dowLoadHTTP(url, params = {}) {

return new Promise((resolve, reject) => {

axios.get(url,params)

.then((response) => {

if (response) { // 判断请求

resolve(response);

} else {

Message.error('数据请求失败');

}

})

.catch((err) => {

reject(err);

Message.error('数据请求失败' + error);

});

});

}

2. 获取文件并下载文件  

import {dowLoadHTTP} form 'url'// 此url写第一步封装请求文件地址

dowLoadHTTPt('http://www.baidu.com',{

responseType: 'blob', // 表明返回服务器返回的数据类型, 没有会乱码

params: {}// 里面是请求参数

})

.then(data => {

let blob = new Blob([data], {

type: "application/vnd.ms-excel"

});

var link = document.createElement('a');

link.href = window.URL.createObjectURL(blob);

link.download = "修改文件名称.xls";

link.click()

})

Logo

前往低代码交流专区

更多推荐