vue中导出excel(xlsx)文件
【需求】
1、点击按钮(例如日报生成)实现可以直接下载到本地的excle(xlsx)文件
2、后端接口返回的数据是二进制文件
【实现】
1、调用接口写法,注意responseType要标注为blob
// 首页日报生成
export function getCreateDailyReport(params) {
return request({
url: '/sy/createDailyReport',
method: 'get',
params,
responseType: 'blob'
})
}
2、页面调用的方法, saveAs是引用的 import { saveAs } from 'file-saver'这个插件
// 日报生成
handleReportGenerate() {
const yesterday = moment().subtract(1, 'days').format('YYYY年MM月DD日');
getCreateDailyReport({}).then((res) => {
saveAs(new Blob([res], {
type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
}), yesterday +'情况汇总.xlsx');
}).catch(() => {});
},
吾日三省吾身,脚踏实地~

浙公网安备 33010602011771号