Vue路由匹配规则routes中的name属性

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vue路由匹配规则routes中的name属性相关的知识,希望对你有一定的参考价值。

参考技术A

一、说明引入
vue-router能很方便的管理所有的单页组件。我们在定义每个路由规则 routes 的时候会有一个name的属性。看到项目中出现了不知道是啥用,不加也没什么问题,就查了查作用。

二、路由规则中name属性的作用
1、可以用name传参 使用$router.name获取组件name值。

2、用于路由规则中定义参数,to 属性指向一个对象时用于确定指向的组件。pramas传参的引入,pramas必须用name来引入;query可以用name或者path来引入。(新发现,具体写在后面的 路由规则中定义参数 )

vue路由对象($route)参数简介

路由对象
在使用了 vue-router 的应用中,路由对象会被注入每个组件中,赋值为 this.$route ,并且当路由切换时,路由对象会被更新。

so , 路由对象暴露了以下属性:

1.$route.path
字符串,等于当前路由对象的路径,会被解析为绝对路径,如 "/home/news" 。


2.$route.params
对象,包含路由中的动态片段和全匹配片段的键值对。


3.$route.query
对象,包含路由中查询参数的键值对。例如,对于 /home/news/detail/01?favorite=yes ,会得到$route.query.favorite == ‘yes‘ 。


4.$route.router
路由规则所属的路由器(以及其所属的组件)。


5.$route.matched
数组,包含当前匹配的路径中所包含的所有片段所对应的配置参数对象。


6.$route.name
当前路径的名字,如果没有使用具名路径,则名字为空。


在页面上添加以下代码,可以显示这些路由对象的属性:

1 <div>
2 <p>当前路径:{{$route.path}}</p>
3 <p>当前参数:{{$route.params | json}}</p>
4 <p>路由名称:{{$route.name}}</p>
5 <p>路由查询参数:{{$route.query | json}}</p>
6 <p>路由匹配项:{{$route.matched | json}}</p>
7 </div>

 

以上是关于Vue路由匹配规则routes中的name属性的主要内容,如果未能解决你的问题,请参考以下文章

如何使用正则表达式匹配nuxtjs,vue中路由中的特定单词?

vue路由对象($route)参数简介

Symfony 3.4 / routing:参数值中的Urlencoded“/”导致与路由不匹配

thinkphp路由的完整匹配

thinkphp路由的完整匹配

gateway网关路由匹配规则