vue router导航守卫使用不了this.$store

再使用导航守卫时候,需要判断vuex中的内容,但是没有this,偶然发现可以使用router这个对象获取到

import Vue from 'vue'
import VueRouter from 'vue-router'
import Map from '@/components/Map'
import Service from '@/components/Service'
import Confirm from '@/components/Confirm'

Vue.use(VueRouter)

//定义路由
let routes = [
    {path: '/map', component: Map},
    {path: '/service', component: Service},
    {path: '/confirm', component: Confirm},
    {path: '/', component: Map},
]
//创建路由实例
let router = new VueRouter({
    mode: 'history',
    routes,
})
router.beforeEach((to, from, next) => {
    //这个router包含了大部分的内容
    console.log(router.app.$store.getters.user)
   
    next()
})
export default router;

你可能感兴趣的:(vue router导航守卫使用不了this.$store)