在项目中,我们一般会加入对于登录用户的权限判断,一般后端在我们请求数据的时候去判断是否为登录状态,如果我们在浏览器中打开一个登录页面去登录跳转页面,再去打开浏览器的另一个页面直接粘贴跳转后的路由去进入页面,这时候需要我们在路由的钩子函数中去做一个登录的判断,在登录时我们需要在sessionStorage中存入一个值作为判断,(因为sessionStorage存入的值只存在于当前的页面),这样在每次路由跳转时加入判断就不会出现地址栏输入页面路径直接跳转页面。
router.beforeEach((to, from, next) => {
const userId = sessionStorage.getItem("token");
// 未登录重置路径
if (!userId) {
alert('暂未登录,请您先去登录 ヾ(●´▽`●)ノ')
next('/login')
}
next()
})