在router/index.js中定义路由导航守卫
// 挂载路由导航守卫
router.beforeEach((to, from, next) => {
// to 将要访问的路径
// from 从哪个路径跳转来的
// next 是一个函数,表示放行
// 判断是否存在token,如果不存在强制跳转到login页面
if (to.path === '/login') return next()
// 获取token
const tokenStr = window.sessionStorage.getItem('token')
if (!tokenStr) return next('/login')
// 存在就放行
next()
})
退出按钮清除sessionStorage中的token值
logout () {
// 清除sessionStorage中的token值
window.sessionStorage.clear()
// 返回到login
this.$router.push('/login')
}
}