1、先下载一波 file-saver
yarn add file-saver
2、封装导出-接口的请求

        需要修改请求的数据类型 responsetype 的值为 ' blob '

        responsetype 默认值是 ' json '  可省略不写

// 导出excel
export function exportExcel() {
  return http({
    url: '/sys/user/export',
    responseType: 'blob'
  })
}
3、axios中的拦截器,判断返回的是否是二进制文件流,并返回响应数据
  // 判断是否是blob数据格式 说明这次响应的数据是二进制文件流
  if (response.data instanceof Blob) {
    return response.data
  }
4、页面中发送请求
   // 导出excel表格
    async exportExcel() {
      const res = await exportExcel()
      fileSaver.saveAs(res, '公司全部员工信息表.xlsx')
    },
5、导出的结果:

 

 

GitHub 加速计划 / vu / vue
82
16
下载
vuejs/vue: 是一个用于构建用户界面的 JavaScript 框架,具有简洁的语法和丰富的组件库,可以用于开发单页面应用程序和多页面应用程序。
最近提交(Master分支:4 个月前 )
9e887079 [skip ci] 3 个月前
73486cb5 * chore: fix link broken Signed-off-by: snoppy <michaleli@foxmail.com> * Update packages/template-compiler/README.md [skip ci] --------- Signed-off-by: snoppy <michaleli@foxmail.com> Co-authored-by: Eduardo San Martin Morote <posva@users.noreply.github.com> 7 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐