私は単純なasync
機能を持っています。それはちょうど、要求を送信し、データを返します。予期しないトークンエラーを投げるのを待ちます
export const updatePanorama = async ({ commit }, payload) => {
const urlEnd = '/v1/pano/update'
const type = 'post'
const resp = await api.asyncRequest(urlEnd, type, payload)
commit('SET_PANORAMA', resp.data)
return resp
}
そして、これは私が機能を使用している方法です:
handleUpdatePanorama (panorama) {
const payload = {}
this.updatePanorama(payload).then(resp => {
this.setIsLoading(false)
this.handleAlert('updateSuccess', 'success')
}).catch(() => {
this.setIsLoading(false)
this.handleAlert('updateError', 'danger')
})
},
then
内部エラーがあるかどう問題がcatch
実行後、コードであります。しかし、この方法では、キャッチエラーがリクエストエラーか、それともコード内でエラーが発生したのかがわかりません。
は、私はその問題を解決するためにtry
とcatch
をしようとしている:
handleUpdatePanorama (panorama) {
try {
const payload = {}
const resp = await this.updatePanorama(payload)
console.log('resp:', resp)
this.setIsLoading(false)
this.handleAlert('updateSuccess', 'success')
} catch (err) {
this.setIsLoading(false)
this.handleAlert('updateError', 'danger')
})
},
しかし、私はこの行の予期しないトークンエラーが出ます:await this.updatePanorama(payload)
は私が間違って何をしているのですか?
関数が 'async'以外の場合、awaitは使用できません。 –
FYI、' async/await'はES7の一部ではありません。 –