vue $router
时间: 2023-10-09 17:09:34 浏览: 56
`$router` 是 Vue.js 中的一个全局对象,它是 Vue Router 的实例,用于进行页面路由的控制。在使用 Vue Router 进行页面路由时,你可以通过 `$router` 对象来进行路由的跳转、传递参数等操作。以下是一些常见的 `$router` 方法:
- `push(location: RawLocation, onComplete?: Function, onAbort?: ErrorHandler)`: 跳转到一个新的页面,会向浏览器的历史栈中添加一个新的记录。
- `replace(location: RawLocation, onComplete?: Function, onAbort?: ErrorHandler)`: 跳转到一个新的页面,但不会向浏览器的历史栈中添加一个新的记录,而是替换当前页面的记录。
- `go(n: number)`: 在历史栈中向前或向后跳转 n 步。
除了以上方法之外,`$router` 还有一些其它的属性和方法,例如:
- `$router.currentRoute`: 当前激活的路由信息。
- `$router.beforeEach`: 全局前置守卫,用于在跳转之前对路由进行拦截处理。
总之,`$router` 对象是 Vue Router 的核心对象,使用它可以方便地进行页面路由的控制。
相关问题
vue $router历史
导航的方法有哪些?
vue-router提供了两个便捷方法:$router.back()和$router.forward(),分别用于在历史记录中后退到上一个页面和前进到下一个页面。此外,还有三个编程式导航的API:$router.push()、$router.replace()和$router.go(),分别用于跳转到指定hash地址并增加历史记录、跳转到指定hash地址并替换当前历史记录以及实现导航历史前进、后退。
vue $router新窗口打开
如果你想要在 Vue.js 中使用 `$router` 打开一个新窗口,你可以使用 `window.open()` 方法,并将路由的完整路径作为参数传递给它。例如:
```
this.$router.push({ path: '/example' }) // 在当前窗口中打开 example 路由
window.open(this.$router.resolve({ path: '/example' }).href, '_blank') // 在新窗口中打开 example 路由
```
此外,你可以添加其他参数来配置新窗口的大小、位置等。例如:
```
window.open(this.$router.resolve({ path: '/example' }).href, '_blank', 'height=600,width=800,left=100,top=100')
```
这将会打开一个高度为 600 像素、宽度为 800 像素、距离屏幕左上角 100 像素、100 像素的新窗口。注意,这可能会被浏览器的弹出窗口拦截器拦截,因此你需要确保你的浏览器允许在新窗口中打开链接。