/****
* 路由导航守卫 叫做路由钩子函数 又叫路由生命周期 实在页面跳转的过程稿 到了某一个特定的时间节点会触发的钩子函数
*
* 分为全局守卫 beforeEach路由进入之前 beforeEach路由解析之前 afterEach 路由离开之前
* 组件 beforeRouteEmter 路由进入之前 beforeRoutUpdate路由更新之前 beforeRouteLeave 路由离开之后
* 单个 beforeEnter 路由进入之前
* 这些导航守卫有三个参数 to from next to 代表到哪儿去 from 代表从哪儿来 next 代表执行下一步
在写代码的过程中我一般用导航守卫进行页面的鉴权处理,在用户登陆成功的时候,我们会把 token 和
用户信息存到 vuex 或者本地存储中,
代表了用户的登陆状态,在访问某个页面的时候判断是否存的有 token,
就能正常访问这个页面,如果没有 token,那么就用 next 跳转到登陆页面
5.1 beforEach 和 beforeResolve 的区别
都是在路由跳转之前执行 但是 beforeEach 是在解析路由规则之前 执行 beforeResolve 是解析之后 路由跳转之前执行 beforeEach 比 beforeResolve 执行的时机更早
5.2 路由守卫的执行顺序
全局前置 独享守卫 组件守卫 解析守卫 后置守卫
5.3 要进行是否登陆的守卫
如果守卫所有页面 会出现一个死循环的问题 再加一层判断 如果是登陆页面 就 next 不是才跳转 next 组件级守卫 有一个问题就是 拿不到 this 解决方法是 next 接收一个回调函数 这个回调函数的第一个参数 vm 就是组件实例就相当于是 this