路由的钩子函数?
参考答案
全局的路由钩子函数
- beforeEach
- afterEach
单个的路由钩子函数(路由独享)
- beforeEnter
组件内的路由钩子函数
- beforeRouteEnter
- beforeRouteLeave
- beforeRouteUpdate
导航守卫的三个参数的含义?
参考答案
- to: 即将要进入的目标路由对象
- from: 当前导航正要离开的路由对象
- next: 此函数必须调用,不然路由跳转不过去
- next(): 进入下一个路由
- next(false): 中断当前的导航
- next(‘/‘)或next({ path: ‘/‘ }) : 跳转到其他路由,当前导航被中断,进行新的一个导航。
路由导航守卫和Vue实例生命周期钩子函数的执行顺序?
参考答案
路由导航守卫都是在vue实例生命周期钩子函数之前执行的
route和router有什么区别?
参考答案
route是“路由信息对象”,包括path,params,hash,query,fullPath,matched,name等路由信息参数
router是“路由实例对象”,包括了路由的跳转方式,钩子函数等
路由的跳转方式?
参考答案
- 声明式(标签跳转)
<router-link to="home"></router-link>
- 编程式
this.$router.push({path: "home", query: {num: 1}})
如何获取路由传过来的参数?
参考答案
- query:
this.$route.query.userId
- params:
this.$route.params.userId
参考答案
-
query:
this.$router.push({path:"home", query:{id:"123"}})
this.$route.query.id
params:
this.$router.push({path:"home", query:{id:"123"}})
this.$route.params.id
- query刷新页面参数不会消失,params刷新页面参数会消失,可以考虑本地存储解决
- query传参会显示url地址上,params传参并不会显示在地址栏
参考答案