如果想实现一个效果,将token值清除后刷新页面回到登录页面并且可以跳转到注册页面。需要使用beforeEach来实现
这里需要添加一个用来放开token权限的变量,
- {
- path: '/404',
- name: '/404',
- component: NotFound
- },
- {
- path: '/',
- name: 'login',
- component: Login,
- },
- {
- path: '/register',
- meta: {
- nacy: "true"
- },
- name: 'register',
- component: Register,
- },
- router.beforeEach((to, from, next) => {
- var token = sessionStorage.getItem('token')//存储token
- if (to.name) {
- if (token || to.meta.nacy == 'true') {//to.meta.nacy=='true'这里面的nacy就是自己在路由中设置的//不参与token验证的页面参数变量这个变量可以自己定义
- next()
- } else {
- if (to.path == '/') {
- next()
- } else {
- next('/')
- }
- }
- }
-
- });