在beforeEnter路线中访问VuexStore

时间:2018-09-23 14:01:19

标签: vuejs2 vuex vue-router

当我尝试访问登录页面时,我想将未经身份验证的用户重定向到“ /登录”路由,将身份验证用户重定向到“ /”。

用户登录后,我将其信息存储在商店中以便于检索。 当没有用户登录时,商店上的用户身份验证信息仍然为空。

因此,在我的“ /登录”的beforeEnter中,我想像这样重定向他:slight_smile:

beforeEnter: (to, from, next) => {
    if (store.getters.userAuthenticated != null) {
           next('/')
    } else {
           next()
    }
}

我在这里的问题是,即使我已登录,在getter中经过身份验证的user始终为null。 当我放置console.log(store.getters)时,我可以在我的userAuthenticated getter中看到实际信息。

enter image description here

似乎beforeEnter中的数据与商店中的实际数据不同步。

我该怎么做?

非常感谢!

1 个答案:

答案 0 :(得分:0)

这就是你的做法

columnsDefs = [
   {
    headerName: 'Name',
    field: 'name'
   },
   {
    headerName: 'Age',
    field: 'age'
   },
   {
    headerName: 'Description',
    field: 'description'
   } 
];