Skip to content

API 文档

createRouter

▸ createRouter(options): Router

创建一个可以被 Vue 应用使用的 Router 实例。

参数

名称类型描述
optionsRouterOptionsRouterOptions

返回值

Router 实例,包含以下属性和方法:

属性/方法类型描述
currentRouteRef<RouteLocationNormalized>当前路由信息的响应式引用
routesRouteRecordRaw[]路由表配置数组
push(to: RouteLocationRaw) => Promise<any>保留当前页面,跳转到应用内的某个页面
replace(to: RouteLocationRaw) => Promise<any>关闭当前页面,跳转到应用内的某个页面
replaceAll(to: RouteLocationRaw) => Promise<any>关闭所有页面,打开到应用内的某个页面
pushTab(to: RouteLocationRaw) => Promise<any>跳转到 tabBar 页面
back(back?: RouteBackRaw) => void返回上一页面或多级页面
beforeEach(guard: NavigationGuard) => () => void注册全局前置导航守卫,返回移除守卫的函数
afterEach(guard: NavigationHookAfter) => () => void注册全局后置导航守卫,返回移除守卫的函数
install(app: App) => voidVue 插件安装方法

useRouter

▸ useRouter(): Router

返回路由器实例。相当于在模板中使用 $Router。

不可以脱离 Vue 上下文使用

返回值

Router

useRoute

▸ useRoute(): Route

返回当前的路由地址信息。相当于在模板中使用 $Route。

不可以脱离 Vue 上下文使用,且只能在页面mount之后才可与使用。当使用场景为外部链接跳转进入或H5页面刷新时,默认从当前链接中取得query参数并放在Routequery字段中,这种场景建议走onLoad声明周期获取参数。

返回值

Route

Router实例方法

push方法

▸ router.push(target:RouteLocationRaw): void

保留当前页面,跳转到应用内的某个页面,相当于使用 uni.navigateTo(OBJECT)

pushTab方法

▸ router.pushTab(target:RouteLocationRaw): void

跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面,相当于使用 uni.switchTab(OBJECT)

replace方法

▸ router.replace(target:RouteLocationRaw): void

关闭当前页面,跳转到应用内的某个页面,相当于使用 uni.redirectTo(OBJECT)

replaceAll方法

▸ router.replaceAll(target:RouteLocationRaw): void

关闭所有页面,打开到应用内的某个页面,相当于使用 uni.reLaunch(OBJECT)

back方法

▸ router.back(back?: RouteBackRaw): void

关闭当前页面,返回上一页面或多级页面,相当于使用 uni.navigateBack(OBJECT)

参数

名称类型描述
backnumber | RouteBackLocation返回的页面数或返回配置对象。默认值为 1,表示返回上一页。

RouteBackLocation 类型:

属性类型描述
deltanumber返回的页面数,默认值为 1
animationTypeAnimationType窗口动画类型
animationDurationnumber窗口动画持续时间,单位为 ms

Released under the MIT License.