【发布时间】:2020-05-08 20:23:36
【问题描述】:
目前我在我的 vuex 中有以下配置,我所做的是通过 userAuth 操作验证用户的角色并将其分配给状态为 'rol_user' 的属性,使用 UPDATEROL 突变。我在登录的时候执行这个动作,以便用户的角色记录在vuex中。
这里是vuex配置:
import Vue from "vue";
import Vuex from "vuex";
import firebase from 'firebase';
Vue.use(Vuex);
export default new Vuex.Store({
state: {
rol_user: ''
},
mutations: {
UPDATEROL: function (state, payload) {
state.rol_user = payload.rol_user;
}
},
actions: {
userAuth: async (context) =>{
let user = firebase.auth().currentUser;
if(user){
let user_info = await firebase.database().ref('users').child(user.uid).once('value');
let val_user = user_info.val();
console.log("USER AUTH - VUEX");
console.log(val_user.rol);
context.commit('UPDATEROL',{
rol_user: val_user.rol
});
}
}
}
});
它有效地将用户角色分配给state 属性rol_user。
我遇到的问题是重新加载页面时。当我重新加载页面rol_user 时返回到它的初始状态,即为空。
我该如何做才能使角色的值即使在重新加载页面时也不会丢失,而是在我注销之前将其更改为空
【问题讨论】: