Router instance.
Properties
currentRoute
• Readonly
currentRoute: Ref
<RouteLocationNormalizedLoaded
>
Current RouteLocationNormalized
listening
• listening: boolean
允许关闭历史事件的监听。 这是用于微前端的低级 API。
options
• Readonly
options: RouterOptions
传递给创建路由器的原始选项对象
Methods
addRoute
▸ addRoute(parentName
, route
): () => void
添加一个新的 route record 作为现有路线的孩子。
Parameters
名称 | 类型 | 说明 |
---|---|---|
parentName | RouteRecordName | 父路由记录,其中 route 应该附加在 |
route | RouteRecordRaw | 要添加的路由记录 |
Returns
fn
▸ (): void
添加一个新的 route record 作为现有路线的孩子。
Returns
void
▸ addRoute(route
): () => void
向路由器添加新的路由记录。
Parameters
名称 | 类型 | 说明 |
---|---|---|
route | RouteRecordRaw | 要添加的路由记录 |
Returns
fn
▸ (): void
向路由器添加新的路由记录。
Returns
void
afterEach
▸ afterEach(guard
): () => void
添加在每次导航后执行的导航挂钩。 返回一个删除已注册挂钩的函数。
Example
router.afterEach((to, from, failure) => {
if (isNavigationFailure(failure))
console.log('failed navigation', failure)
})
Parameters
名称 | 类型 | 说明 |
---|---|---|
guard | NavigationHookAfter | 要添加的导航挂钩 |
Returns
fn
▸ (): void
添加在每次导航后执行的导航挂钩。 返回一个删除已注册挂钩的函数。
Example
router.afterEach((to, from, failure) => {
if (isNavigationFailure(failure))
console.log('failed navigation', failure)
})
Returns
void
back
▸ back(): void
如果可能,通过调用 history.back()
回到历史。 相当于
router.go(-1)
.
Returns
void
beforeEach
▸ beforeEach(guard
): () => void
添加一个在任何导航之前执行的导航守卫。 返回一个删除已注册守卫的函数。
Parameters
名称 | 类型 | 说明 |
---|---|---|
guard | NavigationGuardWithThis <undefined > | 导航守卫添加 |
Returns
fn
▸ (): void
添加一个在任何导航之前执行的导航守卫。 返回一个删除已注册守卫的函数。
Returns
void
beforeResolve
▸ beforeResolve(guard
): () => void
添加一个在导航即将被解析之前执行的导航守卫。 在此状态下,已获取所有组件并且其他导航守卫已成功。 返回一个删除已注册守卫的函数。
Example
router.beforeResolve((to) => {
if (to.meta.requiresAuth && !isAuthenticated)
return false
})
Parameters
名称 | 类型 | 说明 |
---|---|---|
guard | NavigationGuardWithThis <undefined > | 导航守卫添加 |
Returns
fn
▸ (): void
添加一个在导航即将被解析之前执行的导航守卫。 在此状态下,已获取所有组件并且其他导航守卫已成功。 返回一个删除已注册守卫的函数。
Example
router.beforeResolve((to) => {
if (to.meta.requiresAuth && !isAuthenticated)
return false
})
Returns
void
forward
▸ forward(): void
如果可能,通过调用 history.forward()
在历史中前进。
相当于 router.go(1) 。
Returns
void
getRoutes
▸ getRoutes(): RouteRecordNormalized
获取所有 路由记录 的完整列表。
Returns
go
▸ go(delta
): void
允许您在历史中向前或向后移动。 调用 history.go()
。
Parameters
名称 | 类型 | 说明 |
---|---|---|
delta | number | 您要移动到的历史记录中相对于当前页面的位置 |
Returns
void
hasRoute
▸ hasRoute(name
): boolean
检查是否存在具有给定名称的路由
Parameters
名称 | 类型 | 说明 |
---|---|---|
name | RouteRecordName | 要检查的路由名称 |
Returns
boolean
isReady
▸ isReady(): Promise
<void
>
返回一个在路由器完成初始导航时解析的 Promise,这意味着它已经解析了与初始路由关联的所有异步输入挂钩和异步组件。 如果初始导航已经发生,则 promise 会立即 resolve。
这在服务器端渲染中很有用,可确保服务器和客户端的输出一致。 请注意,在服务器端,您需要手动推送初始位置,而在客户端,路由器会自动从 URL 中获取它。
Returns
Promise
<void
>
onError
▸ onError(handler
): () => void
添加一个错误处理程序,每次在导航期间发生未捕获的错误时都会调用该错误处理程序。 这包括同步和异步抛出的错误,在任何导航守卫中返回或传递给next
的错误,以及在尝试解析呈现路由所需的异步组件时发生的错误。
Parameters
名称 | 类型 | 说明 |
---|---|---|
handler | _ErrorHandler | 要注册的错误处理程序 |
Returns
fn
▸ (): void
添加一个错误处理程序,每次在导航期间发生未捕获的错误时都会调用该错误处理程序。 这包括同步和异步抛出的错误,在任何导航守卫中返回或传递给“next”的错误,以及在尝试解析呈现路由所需的异步组件时发生的错误。
Returns
void
push
▸ push(to
): Promise
<undefined
| void
| NavigationFailure
>
通过将条目推送到历史堆栈中,以编程方式导航到新 URL。
Parameters
名称 | 类型 | 说明 |
---|---|---|
to | RouteLocationRaw | 要导航到的路线位置 |
Returns
Promise
<undefined
| void
| NavigationFailure
>
removeRoute
▸ removeRoute(name
): void
按名称删除现有路线。
Parameters
名称 | 类型 | 说明 |
---|---|---|
name | RouteRecordName | 要删除的路由名称 |
Returns
void
replace
▸ replace(to
): Promise
<undefined
| void
| NavigationFailure
>
通过替换历史堆栈中的当前条目,以编程方式导航到新 URL。
Parameters
名称 | 类型 | 说明 |
---|---|---|
to | RouteLocationRaw | 要导航到的路线位置 |
Returns
Promise
<undefined
| void
| NavigationFailure
>
resolve
▸ resolve(to
, currentLocation?
): RouteLocation
& { href
: string
}
返回路由位置 的规范化版本。 还包括一个包含任何现有base
的href
属性。 默认情况下,使用的 currentLocation
是 router.currentRoute
并且应该只在高级用例中被覆盖。
Parameters
名称 | 类型 | 说明 |
---|---|---|
to | RouteLocationRaw | 要解析的原始路线位置 |
currentLocation? | RouteLocationNormalizedLoaded | 要解析的可选当前位置 |
Returns
RouteLocation
& { href
: string
}