現在、リロード時にも機能するログイン判定を元にしたページリダイレクト処理を、middlewareに記述しています。
export default function ({ store, redirect }) { if (store.state.store_info.login != true) { return redirect('/stores-admin/login/') } }
この時、NuxtServerIntにはこのように書いて、sotreを初期化しています。tokenをlocalstrageに入れています。
async nuxtClientInit ({ state, commit }) { if (localStorage.token) { const store_info = await this.$axios.$get('/stores/me', { headers: { "Content-Type": "application/json", "Authorization": `Bearer ${localStorage.getItem('token')}` }, data: {} }) commit('setStore', store_info.store) } }
しかしながら、どうしてもmiddlewareが先に呼ばれ、NuxtServerIntでStoreのstore_info.loginにはtrueが入るのですが、入る前にmimddlewareの処理が走るために毎回false(デフォルト)判定されてしまいます。
原因がわかる方いましたら、よろしくお願いいたします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。