原文链接:https://blog.csdn.net/xunfengZ/article/details/109670979
总的来说,
$ router是用来操作路由的,$ route是用来获取路由信息的。
1.$router是VueRouter的一个实例,他包含了所有的路由,包括路由的跳转方法,钩子函数等,也包含一些子对象(例如history)
常用的跳转连接的方法:
//常规方法 this.$router.push("/login"); //使用对象的形式 不带参数 this.$router.push({ path:"/login" }); //使用对象的形式,参数为地址栏上的参数 this.$router.push({ path:"/login",query:{username:"jack"} }); 使用对象的形式 ,参数为params 不会显示在地址栏 this.$router.push({ name:'user' , params: {id:123} });
主要的属性有:
$route.path 字符串,等于当前路由对象的路径,会被解析为绝对路径,如/home/ews
$route.params 对象,包含路由中的动态片段和全匹配片段的键值对,不会拼接到路由的url后面
$route.query 对象,包含路由中查询参数的键值对。会拼接到路由url后面
$route.router 路由规则所属的路由器
$route.name 当前路由的名字,如果没有使用具体路径,则名字为空