我想在我指定的页面做权限检查,在 router 中的 index.js 中 写了代码
router.beforeEach((to, from, next) => {
if(to.meta.requireAuth){
//这里拉的 api接口 执行用户等级判断,把用户等级 存储到 session
sessionStorage.setItem("flag",response.data.flag)
next()
}else{
next()
}
}
我在 需要进行 鉴权的页面 打印这个 session
created(){
console.log(sessionStorage.getItem("flag"))
}
问题是: 当我登录以后 第一次点击 这个鉴权页面 这个 session 是没有的, 当我点了其他页面 在点 回来这个页面 就有了,这个 我 beforeEach 用的不对么?
想请教一下, 这个是什么问题造成的!
created是在beforeEach之前执行的,所以你第一次到鉴权页面,sessionStorage里面没有放进去,点了其他页面会把session放进去,再回来就有了