fetchから任意のエラーページへリダイレクトさせる
validate after fetch · Issue #2010 · nuxt/nuxt.js
export default {
async fetch({ store, error }) {
if (store.getters.isAuthenticated) {
await store.dispatch('fetchProfile')
} else {
error({ statusCode: 401, message: 'Unauthorised' })
}
}
}
error()
関数を使ってエラーページに飛ばせる。
vue-router's navigation guard
export default {
beforeRouteEnter(to, from, next) {
},
beforeRouteUpdate(to, from, next) {
},
beforeRouteLeave(to, from, next) {
},
}
をページコンポーネントに定義すると使ってくれる。beforeRouteEnter()のvalidate() との大きな違いはリダイレクト先を自由にキメられるがcontext
を拾えず404にも流せないところ。