useRoute()、useRouter()本质是两个函数,是用于获取路由相关信息。useRoute():用于返回当前路由信息对象用于接收路由参数。useRouter():用于返回当前路由实例,常用于实现路由跳转。使用方法先引入且需要调用两个函数才可以得到相关信息。
一、useRoute()
打印useRoute(),可以看到返回的是对象,里面包含matched、meta、name、params、query、path等路由参数信息。
fullPath:显示当前路由路径(包含子路由,如 value: "/acl/user");
matched:值为数组,其数组的长度是路由层级,数组内容包含二级路由和完整路由,如下图:
关于matched需要注意,在面包屑功能中,需要用到matched提供的数组信息进行渲染
meta:获取当前路由元信息;
name:当前路由名称;
params、query:当前路由参数;
path:当前路由完整路径;
二、useRouter()
useRouter()对象中,包含了很多路由跳转的方法:replace()、push()、back()、go()、addRoute()、hasRoute()、removeRoute()等常用的路由方法