Hi I'm trying access to vuex state from VueRouter instance, but i can't get the state properly.
Attempting to access the $store
property of router.app
says it is null
Here my vueRouter code:
router.beforeEach((to, from, next) => {
const isLoggedIn = router.app.$store.getters["user/isLogedIn"];
if (to.name !== "Login" && !isLoggedIn) {
next({ name: "Login" });
} else {
next();
}
});
In vuex store:
export const getters = {
isLoggedIn(state) {
if (state && state.user) {
console.log("state.user", state.user);
}
return state.user !== null && state.user !== {};
},
};
Here is my vueRouter object:
VueRouter Object:
And here is the error that i have:
Error:
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…