vue导出excel
后端对返回数据进行base64编码, 前端需要进行解码, 然后以二进制格式进行读取
transformStream(res) {
var str = atob(res.data['content'])
var len = str.length
var arr = new Uint8Array(len)
while (len--) {
arr[len] = str.chartCodeAt(len)
}
var blob = new Blob([arr], {type: application/vnd.ms-excel'})
var downloadEle = document.createElement('a')
var href = window.URL.createObjectURL(blob)
downloadEle.href = href
downloadEle.download = `${res.data['name']}.xls`
document.body.appendChild(downloadEle)
downloadEle.click()
document.body.removeChild(downloadEle)
window.URL.revokeObjectURL(href)
}