Vue 路由守卫
路由守卫,也可以是路由拦截,我们可以通过路由拦截,来判断用户是否登录,该页面用户是否有权限浏览,需要结合 meta 来实现
Vue 中路由守卫一共有三种,一个全局路由守卫,一个是组件内路由守卫,一个是 router 独享守卫
全局路由守卫
所谓全局守卫就是所有页面的路由拦截。它有两个钩子 全局前置守卫beforeEach
, 全局后置守卫afterEach
全局前置守卫,就是 用户进入页面时路由拦截,进行一些处理的钩子。通常做一些页面权限控制或 title 命名之类的操作。
全局后置守卫,就是 页面成功访问的回调钩子
1 | import Vue from "vue"; |
组件独享守卫
组件独享守卫是加载组件时定义的一些钩子,有beforeRouteEnter
、beforeRouteUpdate
和beforeRouteLeave
1 | <template> |
登陆权限控制
1 | import Vue from "vue"; |