JS文件导出功能

JS文件导出功能:
先把responseType设置为blob
然后请求接口后,拿到数据:

const that = this
const fileReader = new FileReader()
fileReader.onload = function () {
  try {
    const jsonData = JSON.parse(this.result)
    if (jsonData.code) {
      // 说明是普通对象数据,后台转换失败
      that.$message({
        type: 'error',
        message: jsonData.message
      })
    }
  } catch (err) {
    // 解析成对象失败,说明是正常的文件流
    var elink = document.createElement('a')
    var blob = new Blob([res])
    elink.style.display = 'none'
    elink.href = URL.createObjectURL(blob)
    elink.setAttribute('download', '文件名' + '.xls') // 设置下载文件名称
    elink.click()
    URL.revokeObjectURL(elink.href)
    document.body.removeChild(elink)
  }
}
fileReader.readAsText(res)

你可能感兴趣的:(前端)