Я сохранил в своем Vue хранилище состояние пользователя Laravel, но пытаюсь получить его вот так:
let isLoggedIn = store.getters.isLoggedIn
В консоли при вызове этой переменной я получаю:
ƒ isLoggedIn (state) {return state.user? истина: ложь; }
вместо true
или false
.
Код моего магазина:
let store = {
state: {
user: '',
},
mutations: {
setAuthUser(state, user) {
state.user = user;
}
},
getters: {
isLoggedIn(state) {
return state.user ? true : false
}
}
};
export default store;
My app.js
, где я вызываю геттер :
router.beforeEach((to, from, next) => {
let isLoggedIn = store.getters.isLoggedIn
console.log(isLoggedIn)
if (to.matched.some(record => record.meta.requiresAuth)) {
// this route requires auth, check if logged in
// if not, redirect to login page.
if (!isLoggedIn) {
next({
path: '/ingresar',
query: { redirect: to.fullPath }
})
} else {
next()
}
} else {
next() // make sure to always call next()!
}
})