从Vue-Router调用vuex getter

时间:2016-04-18 22:17:59

标签: reactive-programming vue.js vue-router vue-component

是否可以从路由器调用vuex getter? 我需要检查来自beforeach hook的布尔变量的状态:

router.beforeEach(function ({ to, next }) {
    if (to.path !== '/login') {
        // return a Promise that resolves to true or false
        return the-needed-variable-from-store;
    } else {
        next()
    }
})
如何获取并检查从商店派生的变量?

非常感谢!

1 个答案:

答案 0 :(得分:0)

这里有一个讨论:https://github.com/vuejs/vuex-router-sync/issues/3#issuecomment-200192468

我能够以相当荒谬的方式访问变量:

router.beforeEach((transition)=>{
    if(transition.to.auth){
        if(!transition.to.router.app.$store.state.auth.authorized){
            transition.abort()
            router.go({path:"/"})
        }
    }
    transition.next()
});

因此,在您的情况下,它可能看起来像to.router.app.$store.state