function download () {
return axios.get('download_url', { responseType: 'blob' })
.then(res => Promise.resolve(res), error => Promise.reject(error))
}
としたときに、どうやってエラーを表示するか?とりあえずメモ
download().then(res => {
// FileSaverを使って保存
FileSaver.saveAs(new Blob([res.data], { type: 'image/jpeg' }))
}, async error => {
try {
let resText = await new Promise(resolve => {
let reader = new FileReader()
reader.addEventListener('loadend', () => {
resolve(reader.result)
})
reader.readAsText(error.response.data)
})
// エラー表示
alert(JSON.parse(resText))
} catch (e) {
}
})