一、$route
$route对象表示当前的路由元信息。
我们经常会用到路由信息,比如:
$route.path
字符串,等于当前路由对象的路径,会被解析为绝对路径,如 “/shops/goods” 。
$route.params
对象,包含路由中的动态片段和全匹配片段的键值对 。
$route.query
对象,包含路由中查询参数的键值对。例如,对于 /home/news/detail/01?favorite=yes ,会得到$route.query.favorite == ‘yes’ 。
$route.router
路由规则所属的路由器(以及其所属的组件)。
$route.matched
数组,包含当前匹配的路径中所包含的所有片段所对应的配置参数对象。
$route.name
当前路径的名字,如果没有使用具名路径,则名字为空。
所以我们可以通过$route.来获取到路由里的这些信息为自己所用。这就是 $route!
二、$router
$router对象是全局路由ueRouter的实例,是router构造方法的实例。
路由实例常用方法:
$router.push('home')
页面跳转
// 字符串注意:push方法的跳转会向 history 栈添加一个新的记录,当我们点击浏览器的返回按钮时可以看到之前的页面。
this.$router.push('home')
// 对象
this.$router.push({ path: 'home' })
// 命名的路由
this.$router.push({ name: 'user', params: { userId: 123 }})
// 带查询参数,变成 /register?plan=123
this.$router.push({ path: 'register', query: { plan: '123' }})
$router.go(-1)
页面前进或者后退
this.$router.go(-1) // 后退
$router.replace('/')
//push方法会向 history 栈添加一个新的记录,而replace方法是替换当前的页面,注意:replace不会向 history 栈添加一个新的记录
// 一般使用replace来做404页面
this.$router.replace('/')
网友回复
为啥所有的照片分辨率提升工具都会修改照片上的图案细节?
js如何在浏览器中将webm视频的声音分离为单独音频?
微信小程序如何播放第三方域名url的mp4视频?
ai多模态大模型能实时识别视频中的手语为文字吗?
如何远程调试别人的chrome浏览器获取调试信息?
为啥js打开新网页window.open设置窗口宽高无效?
浏览器中js的navigator.mediaDevices.getDisplayMedia屏幕录像无法录制SpeechSynthesisUtterance产生的说话声音?
js中mediaRecorder如何录制window.speechSynthesis声音音频并下载?
python如何直接获取抖音短视频的音频文件url?
js在浏览器中如何使用MediaStream与MediaRecorder实现声音音频多轨道混流?