前提・実現したいこと
Nuxt×firebaseを学習しております。
onAuthStateChangedで関数を呼び出す処理がしたいのですが、エラーが起きてしまいます。
vuexを使用しております。
発生している問題・エラーメッセージ
do not mutate vuex store state outside mutation handlers
該当のソースコード
Vue
1~省略~ 2 created() { 3 firebase.auth().onAuthStateChanged(user => { 4 if(user){ 5 //ログインされると、setLoginActionsを呼び出す。 6 //引数でユーザー情報を渡す。 7 this.$store.dispatch('frame/setLoginActions', user) 8 } else { 9 //ログアウトされると、deleteLoginActionsを呼び出す。 10 this.$store.dispatch('frame/deleteLoginActions') 11 } 12 }) 13 }, 14~省略~
(抜粋)
javascript
1 2export const state = () => ({ 3 login_user: null, 4}) 5 6export const actions = { 7//setLoginMutationsを呼び出す。 8 setLoginActions({ commit },user){ 9 commit('setLoginMutations', user) 10 }, 11//deleteLoginMutationsを呼び出す。 12 deleteLoginActions({ commit }) { 13 commit('deleteLoginMutations') 14 }, 15} 16 17export const mutations = { 18 //ユーザー情報を渡す。 19 setLoginMutations(state,user){ 20 state.login_user = user 21 }, 22 //ユーザー情報を削除する。 23 deleteLoginMutations(state){ 24 state.login_user = null 25 } 26}
その他
上記コードでは、エラーが起きてしまいます。原因が分かる方や、代替案が分かる方がいらっしゃいましたら、教えていただけないでしょうか。
よろしくお願いいたします。
あなたの回答
tips
プレビュー