路由传参 pramas传参 / 接受参数 this.route.query.id
声明式导航 router-link 编程时式导航 $roouter.push
什么是路由守卫? 全局守卫 全局前置守卫 (所有路由进入前触发,进行权限控制)
路由后置守卫
路由独享守卫
面试问题:你对路由守卫是怎么理解 路由守卫分为三种:全局守卫 路由独享守卫 组件内守卫
- 全局守卫
- beforeEach
- 可以用来做权限控制
- 可以实现不同的页面标题不一样 document.title = to.meta.title
- afterEach
- 可以实现进度效果 NProgress.done()
- 路由独享守卫
- beforeEnter 语法和 beforeEach 全局前置没有区别,只会对当前这一个路由规则有效果
- 组件内守卫
- 只会对当前这个组件有效果,如果多个路由对应的是同一个组件,这个时候用组件内守卫更方便,只用写一次
- beforeRouteEnter 类似 beforeEach
- beforeRouteLeave 类似 afterEach
- beforeRouteUpdate 路由切换的时候 当我们路由是同一个路由只不过参数变了 生命周期钩子不会执行 这个时候解决的办法就是监听 watch 我们$route 或者 beforeRouteUpdate