this.
r
o
u
t
e
和
t
h
i
s
.
route 和 this.
route和this.router :
this.$route $route对象表示当前的路由信息,是路由【参数对象】,所有路由中的参数, params, query 都属于它。
用来获取路由信息,包含的是路由基本信息,如path、name、query、fullPath等,
this.$route.matched[0].name
-
$route.path 字符串,对应当前路由的路径,总是解析为绝对路径,如"/foo/bar"。
-
$route.params 一个 key/value 对象,包含了 动态片段 和 全匹配片段, 如果没有路由参数,就是一个空对象。
-
r o u t e . q u e r y 一 个 k e y / v a l u e 对 象 , 表 示 U R L 查 询 参 数 。 例 如 , 对 于 路 径 / f o o ? u s e r = 1 , 则 有 route.query 一个 key/value 对象,表示 URL 查询参数。 例如,对于路径 /foo?user=1,则有 route.query一个key/value对象,表示URL查询参数。例如,对于路径/foo?user=1,则有route.query.user == 1, 如果没有查询参数,则是个空对象。
-
$route.hash 当前路由的hash值 (不带#) ,如果没有 hash 值,则为空字符串。锚点*
-
$route.fullPath 完成解析后的 URL,包含查询参数和hash的完整路径。
-
$route.matched 数组,包含当前匹配的路径中所包含的所有片段所对应的配置参数对象。
-
$route.name 当前路径名字
-
$route.meta 路由元信息
导航钩子的参数:
router.beforeEach((to,from, next)=>{//to 和from都是 路由信息对象,后面使用路由的钩子函数就容易理解了})
作者:努力让自己更自信
链接:https://www.jianshu.com/p/758bde4d9c2e
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
this.$router $router对象是全局路由的实例,是router构造方法的实例。是路由【导航对象】,用它 可以方便的 使用 JS 代码,实现路由的 前进、后退、 跳转到新的 URL 地址。
用来进行路由操作,在原型链(proto)中包含路由的处理方法,如跳转push等。
this.$router.push({path:'/addNew'})
this.$router.push('/') //跳转到根目录,保留历史记录,可以返回
this.$router.replace('/') //跳转到根目录,替换掉当前历史记录,无法返回替换前的页面
this.$router.back() //返回上一个页面
this.$router.go(1) // 1 为向前跳转,-1 为返回(相当于back)
参考:https://blog.csdn.net/LzzMandy/article/details/92782553
以下参考:最好看原文https://blog.csdn.net/wangguoyu1996/article/details/80628135
二、
有时候配置路由时path有时候会加 ‘/’ 有时候不加,例如path:‘name’和path:’/name’。区别其实官方文档说了,我当时没仔细看,导致这个问题还困扰了我很久。
要注意,以 / 开头的路径会被当做根路径。这让你充分的使用嵌套组件而无需设置嵌套的路径。
意思就是以 / 开头的会被当做路径,就不会一直嵌套之前的路径。