Документация API
Документация API
Перечисления
Интерфейсы
- HistoryState
- LocationAsRelativeRaw
- MatcherLocation
- MatcherLocationAsPath
- NavigationFailure
- NavigationGuard
- NavigationGuardNext
- NavigationGuardWithThis
- NavigationHookAfter
- NavigationRedirectError
- RouteLocationAsPathGeneric
- RouteLocationAsPathTyped
- RouteLocationAsRelativeGeneric
- RouteLocationAsRelativeTyped
- RouteLocationGeneric
- RouteLocationMatched
- RouteLocationNamedRaw
- RouteLocationNormalizedGeneric
- RouteLocationNormalizedLoadedGeneric
- RouteLocationNormalizedLoadedTyped
- RouteLocationNormalizedTyped
- RouteLocationOptions
- RouteLocationPathRaw
- RouteLocationResolvedGeneric
- RouteLocationResolvedTyped
- RouteLocationTyped
- RouteMeta
- RouteQueryAndHash
- RouteRecordInfo
- RouteRecordMultipleViews
- RouteRecordMultipleViewsWithChildren
- RouteRecordNormalized
- RouteRecordRedirect
- RouteRecordSingleView
- RouteRecordSingleViewWithChildren
- Router
- RouterHistory
- RouterLinkProps
- RouterMatcher
- RouterOptions
- RouterScrollBehavior
- RouterViewProps
- TypesConfig
- UseLinkOptions
- UseLinkReturn
- _PathParserOptions
- _RouteLocationBase
- _RouteRecordBase
- _RouterLinkI
Псевдонимы типов
LocationQuery
Ƭ LocationQuery: Record<string, LocationQueryValue | LocationQueryValue[]>
Нормализованный объект query, который присутствует в RouteLocationNormalized
LocationQueryRaw
Ƭ LocationQueryRaw: Record<string | number, LocationQueryValueRaw | LocationQueryValueRaw[]>
Loose LocationQuery object that can be passed to functions like Router.push and Router.replace or anywhere when creating a RouteLocationRaw
LocationQueryValue
Ƭ LocationQueryValue: string | null
Possible values in normalized LocationQuery. null renders the query param but without an =.
Пример
?isNull&isEmpty=&other=other
gives
`{ isNull: null, isEmpty: '', other: 'other' }`.LocationQueryValueRaw
Ƭ LocationQueryValueRaw: LocationQueryValue | number | undefined
Possible values when defining a query.
NavigationGuardNextCallback
Ƭ NavigationGuardNextCallback: (vm: ComponentPublicInstance) => unknown
Callback that can be passed to next() in beforeRouteEnter() guards.
Type declaration
▸ (vm): unknown
Parameters
| Name | Type |
|---|---|
vm | ComponentPublicInstance |
Returns
unknown
NavigationGuardReturn
Ƭ NavigationGuardReturn: void | Error | boolean | RouteLocationRaw
Return types for a Navigation Guard. Based on TypesConfig
See
ParamValue
Ƭ ParamValue<isRaw>: true extends isRaw ? string | number : string
Utility type for raw and non raw params like :id
Type parameters
| Name | Type |
|---|---|
isRaw | extends boolean |
ParamValueOneOrMore
Ƭ ParamValueOneOrMore<isRaw>: [ParamValue<isRaw>, ...ParamValue<isRaw>[]]
Utility type for raw and non raw params like :id+
Type parameters
| Name | Type |
|---|---|
isRaw | extends boolean |
ParamValueZeroOrMore
Ƭ ParamValueZeroOrMore<isRaw>: true extends isRaw ? ParamValue<isRaw>[] | undefined | null : ParamValue<isRaw>[] | undefined
Utility type for raw and non raw params like :id*
Type parameters
| Name | Type |
|---|---|
isRaw | extends boolean |
ParamValueZeroOrOne
Ƭ ParamValueZeroOrOne<isRaw>: true extends isRaw ? string | number | null | undefined : string
Utility type for raw and non raw params like :id?
Type parameters
| Name | Type |
|---|---|
isRaw | extends boolean |
PathParserOptions
Ƭ PathParserOptions: Pick<_PathParserOptions, "end" | "sensitive" | "strict">
RouteComponent
Ƭ RouteComponent: Component | DefineComponent
Разрешенный компонент в RouteLocationMatched
RouteLocation
Ƭ RouteLocation<Name>: RouteMapGeneric extends RouteMap ? RouteLocationGeneric : RouteLocationTypedList<RouteMap>[Name]
RouteLocationRaw resolved using the matcher
Type parameters
| Name | Type |
|---|---|
Name | extends keyof RouteMap = keyof RouteMap |
RouteLocationAsPath
Ƭ RouteLocationAsPath<Name>: RouteMapGeneric extends RouteMap ? RouteLocationAsPathGeneric : RouteLocationAsPathTypedList<RouteMap>[Name]
Route location as an object with a path property.
Type parameters
| Name | Type |
|---|---|
Name | extends keyof RouteMap = keyof RouteMap |
RouteLocationAsPathTypedList
Ƭ RouteLocationAsPathTypedList<RouteMap>: { [N in keyof RouteMap]: RouteLocationAsPathTyped<RouteMap, N> }
List of all possible RouteLocationAsPath indexed by the route name.
Type parameters
| Name | Type |
|---|---|
RouteMap | extends RouteMapGeneric = RouteMapGeneric |
RouteLocationAsRelative
Ƭ RouteLocationAsRelative<Name>: RouteMapGeneric extends RouteMap ? RouteLocationAsRelativeGeneric : RouteLocationAsRelativeTypedList<RouteMap>[Name]
Route location relative to the current location. It accepts other properties than path like params, query and hash to conveniently change them.
Type parameters
| Name | Type |
|---|---|
Name | extends keyof RouteMap = keyof RouteMap |
RouteLocationAsRelativeTypedList
Ƭ RouteLocationAsRelativeTypedList<RouteMap>: { [N in keyof RouteMap]: RouteLocationAsRelativeTyped<RouteMap, N> }
List of all possible RouteLocationAsRelative indexed by the route name.
Type parameters
| Name | Type |
|---|---|
RouteMap | extends RouteMapGeneric = RouteMapGeneric |
RouteLocationAsString
Ƭ RouteLocationAsString<Name>: RouteMapGeneric extends RouteMap ? string : _LiteralUnion<RouteLocationAsStringTypedList<RouteMap>[Name], string>
Same as RouteLocationAsPath but as a string literal.
Type parameters
| Name | Type |
|---|---|
Name | extends keyof RouteMap = keyof RouteMap |
RouteLocationAsStringTyped
Ƭ RouteLocationAsStringTyped<RouteMap, Name>: RouteMap[Name]["path"]
Helper to generate a type safe version of the RouteLocationAsString type.
Type parameters
| Name | Type |
|---|---|
RouteMap | extends RouteMapGeneric = RouteMapGeneric |
Name | extends keyof RouteMap = keyof RouteMap |
RouteLocationAsStringTypedList
Ƭ RouteLocationAsStringTypedList<RouteMap>: { [N in keyof RouteMap]: RouteLocationAsStringTyped<RouteMap, N> }
List of all possible RouteLocationAsString indexed by the route name.
Type parameters
| Name | Type |
|---|---|
RouteMap | extends RouteMapGeneric = RouteMapGeneric |
RouteLocationNormalized
Ƭ RouteLocationNormalized<Name>: RouteMapGeneric extends RouteMap ? RouteLocationNormalizedGeneric : RouteLocationNormalizedTypedList<RouteMap>[Name]
Similar to RouteLocation but its matched property cannot contain redirect records
Type parameters
| Name | Type |
|---|---|
Name | extends keyof RouteMap = keyof RouteMap |
RouteLocationNormalizedLoaded
Ƭ RouteLocationNormalizedLoaded<Name>: RouteMapGeneric extends RouteMap ? RouteLocationNormalizedLoadedGeneric : RouteLocationNormalizedLoadedTypedList<RouteMap>[Name]
Similar to RouteLocationNormalized but its components do not contain any function to lazy load components. In other words, it's ready to be rendered by <RouterView>.
Type parameters
| Name | Type |
|---|---|
Name | extends keyof RouteMap = keyof RouteMap |
RouteLocationNormalizedLoadedTypedList
Ƭ RouteLocationNormalizedLoadedTypedList<RouteMap>: { [N in keyof RouteMap]: RouteLocationNormalizedLoadedTyped<RouteMap, N> }
List of all possible RouteLocationNormalizedLoaded indexed by the route name.
Type parameters
| Name | Type |
|---|---|
RouteMap | extends RouteMapGeneric = RouteMapGeneric |
RouteLocationNormalizedTypedList
Ƭ RouteLocationNormalizedTypedList<RouteMap>: { [N in keyof RouteMap]: RouteLocationNormalizedTyped<RouteMap, N> }
List of all possible RouteLocationNormalized indexed by the route name.
Type parameters
| Name | Type |
|---|---|
RouteMap | extends RouteMapGeneric = RouteMapGeneric |
RouteLocationRaw
Ƭ RouteLocationRaw<Name>: RouteMapGeneric extends RouteMap ? RouteLocationAsString | RouteLocationAsRelativeGeneric | RouteLocationAsPathGeneric : _LiteralUnion<RouteLocationAsStringTypedList<RouteMap>[Name], string> | RouteLocationAsRelativeTypedList<RouteMap>[Name] | RouteLocationAsPathTypedList<RouteMap>[Name]
Route location that can be passed to router.push() and other user-facing APIs.
Type parameters
| Name | Type |
|---|---|
Name | extends keyof RouteMap = keyof RouteMap |
RouteLocationResolved
Ƭ RouteLocationResolved<Name>: RouteMapGeneric extends RouteMap ? RouteLocationResolvedGeneric : RouteLocationResolvedTypedList<RouteMap>[Name]
Route location resolved with router.resolve().
Type parameters
| Name | Type |
|---|---|
Name | extends keyof RouteMap = keyof RouteMap |
RouteLocationResolvedTypedList
Ƭ RouteLocationResolvedTypedList<RouteMap>: { [N in keyof RouteMap]: RouteLocationResolvedTyped<RouteMap, N> }
List of all possible RouteLocationResolved indexed by the route name.
Type parameters
| Name | Type |
|---|---|
RouteMap | extends RouteMapGeneric = RouteMapGeneric |
RouteLocationTypedList
Ƭ RouteLocationTypedList<RouteMap>: { [N in keyof RouteMap]: RouteLocationTyped<RouteMap, N> }
List of all possible RouteLocation indexed by the route name.
Type parameters
| Name | Type |
|---|---|
RouteMap | extends RouteMapGeneric = RouteMapGeneric |
RouteMap
Ƭ RouteMap: TypesConfig extends Record<"RouteNamedMap", infer RouteNamedMap> ? RouteNamedMap : RouteMapGeneric
Convenience type to get the typed RouteMap or a generic one if not provided. It is extracted from the TypesConfig if it exists, it becomes RouteMapGeneric otherwise.
RouteMapGeneric
Ƭ RouteMapGeneric: Record<string | symbol, RouteRecordInfo>
Generic version of the RouteMap.
RouteParamValue
Ƭ RouteParamValue: string
RouteParamValueRaw
Ƭ RouteParamValueRaw: RouteParamValue | number | null | undefined
RouteParams
Ƭ RouteParams<Name>: RouteMap[Name]["params"]
Generate a type safe params for a route location. Requires the name of the route to be passed as a generic.
See
Type parameters
| Name | Type |
|---|---|
Name | extends keyof RouteMap = keyof RouteMap |
RouteParamsGeneric
Ƭ RouteParamsGeneric: Record<string, RouteParamValue | RouteParamValue[]>
RouteParamsRaw
Ƭ RouteParamsRaw<Name>: RouteMap[Name]["paramsRaw"]
Generate a type safe raw params for a route location. Requires the name of the route to be passed as a generic.
See
Type parameters
| Name | Type |
|---|---|
Name | extends keyof RouteMap = keyof RouteMap |
RouteParamsRawGeneric
Ƭ RouteParamsRawGeneric: Record<string, RouteParamValueRaw | Exclude<RouteParamValueRaw, null | undefined>[]>
RouteRecord
Ƭ RouteRecord: RouteRecordNormalized
Нормализованная версия записи маршрута.
RouteRecordName
Ƭ RouteRecordName: RouteMapGeneric extends RouteMap ? RouteRecordNameGeneric : keyof RouteMap
Возможные значения имени записи маршрута после нормализации
NOTE: since RouteRecordName is a type, it evaluates too early and it's often the generic version RouteRecordNameGeneric. If you need a typed version of all of the names of routes, use keyof RouteMap
RouteRecordNameGeneric
Ƭ RouteRecordNameGeneric: string | symbol | undefined
Generic version of RouteRecordName.
RouteRecordRaw
Ƭ RouteRecordRaw: RouteRecordSingleView | RouteRecordSingleViewWithChildren | RouteRecordMultipleViews | RouteRecordMultipleViewsWithChildren | RouteRecordRedirect
RouteRecordRedirectOption
Ƭ RouteRecordRedirectOption: RouteLocationRaw | (to: RouteLocation) => RouteLocationRaw
_Awaitable
Ƭ _Awaitable<T>: T | PromiseLike<T>
Maybe a promise maybe not
Type parameters
| Name |
|---|
T |
_RouteRecordProps
Ƭ _RouteRecordProps<Name>: boolean | Record<string, any> | (to: RouteLocationNormalized<Name>) => Record<string, any>
Type parameters
| Name | Type |
|---|---|
Name | extends keyof RouteMap = keyof RouteMap |
Переменные
RouterLink
• Const RouterLink: _RouterLinkI
Компонент для отображения ссылки, вызывающей навигацию по щелчку мыши.
RouterView
• Const RouterView: () => { $props: AllowedComponentProps & ComponentCustomProps & VNodeProps & RouterViewProps ; $slots: { default?: (__namedParameters: { Component: VNode<RendererNode, RendererElement, { [key: string]: any; }> ; route: RouteLocationNormalizedLoadedGeneric }) => VNode<RendererNode, RendererElement, { [key: string]: any; }>[] } }
Компонент для отображения текущего маршрута, на котором находится пользователь.
Объявление типа
• new RouterView(): Object
Компонент для отображения текущего маршрута, на котором находится пользователь.
Returns
Object
| Name | Type |
|---|---|
$props | AllowedComponentProps & ComponentCustomProps & VNodeProps & RouterViewProps |
$slots | { default?: (__namedParameters: { Component: VNode<RendererNode, RendererElement, { [key: string]: any; }> ; route: RouteLocationNormalizedLoadedGeneric }) => VNode<RendererNode, RendererElement, { [key: string]: any; }>[] } |
$slots.default? | (__namedParameters: { Component: VNode<RendererNode, RendererElement, { [key: string]: any; }> ; route: RouteLocationNormalizedLoadedGeneric }) => VNode<RendererNode, RendererElement, { [key: string]: any; }>[] |
START_LOCATION
• Const START_LOCATION: RouteLocationNormalizedLoaded
Начальное описание маршрута, на котором находится маршрутизатор. Может использоваться в навигационных хуках для разграничения начальной навигации.
Пример
import { START_LOCATION } from 'vue-router'
router.beforeEach((to, from) => {
if (from === START_LOCATION) {
// начальная навигация
}
})matchedRouteKey
• Const matchedRouteKey: InjectionKey<ComputedRef<undefined | RouteRecordNormalized>>
RouteRecord being rendered by the closest ancestor Router View. Used for onBeforeRouteUpdate and onBeforeRouteLeave. rvlm stands for Router View Location Matched
routeLocationKey
• Const routeLocationKey: InjectionKey<RouteLocationNormalizedLoadedGeneric>
Allows overriding the current route returned by useRoute in tests. rl stands for route location
routerKey
• Const routerKey: InjectionKey<Router>
Allows overriding the router instance returned by useRouter in tests. r stands for router
routerViewLocationKey
• Const routerViewLocationKey: InjectionKey<Ref<RouteLocationNormalizedLoadedGeneric>>
Allows overriding the current route used by router-view. Internally this is used when the route prop is passed.
viewDepthKey
• Const viewDepthKey: InjectionKey<number | Ref<number>>
Allows overriding the router view depth to control which component in matched is rendered. rvd stands for Router View Depth
Функции
createMemoryHistory
▸ createMemoryHistory(base?): RouterHistory
Создает историю, хранящуюся в памяти. Основное назначение этой истории - рендеринг на стороне сервера (SSR). Она начинается в специальном месте, которого не существует. Пользователь сам должен заменить это место на начальное, вызвав router.push или router.replace.
Параметры
| Название | Тип | Значение по умолчанию | Описание |
|---|---|---|---|
base | string | '' | Базовый путь, который добавляется ко всем URL. По умолчанию равен '/' |
Возвращает
объект истории, который может быть передан в конструктор маршрутизатора
createRouter
▸ createRouter(options): Router
Создает экземпляр Router, который может быть использован приложением Vue.
Параметры
| Название | Тип | Описание |
|---|---|---|
options | RouterOptions | RouterOptions |
Возвращает
createRouterMatcher
▸ createRouterMatcher(routes, globalOptions): RouterMatcher
Creates a Router Matcher.
Parameters
| Name | Type | Description |
|---|---|---|
routes | readonly RouteRecordRaw[] | array of initial routes |
globalOptions | PathParserOptions | global route options |
Returns
createWebHashHistory
▸ createWebHashHistory(base?): RouterHistory
Создает историю на основе хэшей. Полезно для веб-приложений, не имеющих хоста (например, file://), или когда настройка сервера для для работы с любым URL не представляется возможным.
Параметры
| Название | Тип | Описание |
|---|---|---|
base? | string | необязательный базовый адрес. По умолчанию location.pathname + location.search Если в head есть тег <base>, то его значение будет проигнорировано в пользу этого параметра но обратите внимание, что он влияет на все вызовы history.pushState(), то есть если вы используете тег <base>, то его значение href должно соответствовать этому параметру (игнорируя все, что после #). |
Возвращает
Пример
// по адресу https://example.com/folder
createWebHashHistory() // даст итоговый url `https://example.com/folder#`
createWebHashHistory('/folder/') //даст итоговый url `https://example.com/folder/#`
// если `#` указан в base, то он не будет добавлен `createWebHashHistory`
createWebHashHistory('/folder/#/app/') // даст итоговый url `https://example.com/folder/#/app/`
// этого не следует делать, так как это изменяет исходный url и нарушает копирование url
createWebHashHistory('/other-folder/') // даст итоговый url `https://example.com/other-folder/#`
// по адресу file:///usr/etc/folder/index.html
// для местоположений, не имеющих `host`, base игнорируется
createWebHashHistory('/iAmIgnored') //даст итоговый url `file:///usr/etc/folder/index.html#`createWebHistory
▸ createWebHistory(base?): RouterHistory
Создает историю HTML5. Наиболее распространенная история для одностраничных приложений.
Параметры
| Название | Тип |
|---|---|
base? | string |
Возвращает
isNavigationFailure
▸ isNavigationFailure(error, type?): error is NavigationRedirectError
Проверка, является ли объект NavigationFailure.
Параметры
| Название | Тип | Описание |
|---|---|---|
error | any | possible NavigationFailure |
type? | NAVIGATION_GUARD_REDIRECT | опциональный тип для проверки |
Возвращает
является ли ошибка NavigationRedirectError
Пример
import { isNavigationFailure, NavigationFailureType } from 'vue-router'
router.afterEach((to, from, failure) => {
// Любые сбои в навигации
if (isNavigationFailure(failure)) {
// ...
}
// Только дублированные переходы
if (isNavigationFailure(failure, NavigationFailureType.duplicated)) {
// ...
}
// Прерванные или отмененные переходы
if (isNavigationFailure(failure, NavigationFailureType.aborted | NavigationFailureType.canceled)) {
// ...
}
})▸ isNavigationFailure(error, type?): является ли ошибка NavigationFailure
Параметры
| Название | Тип |
|---|---|
error | any |
type? | ErrorTypes | NavigationFailureType |
Возвращает
является ли ошибка NavigationFailure
loadRouteLocation
▸ loadRouteLocation(route): Promise<RouteLocationNormalizedLoaded>
Обеспечивает загрузку маршрута, чтобы его можно было передать в качестве o входного параметра в <RouterView>.
Параметры
| Название | Тип | Описание |
|---|---|---|
route | RouteLocationNormalizedGeneric | RouteLocationGeneric | разрешенный маршрут для загрузки |
Возвращает
Promise<RouteLocationNormalizedLoaded>
onBeforeRouteLeave
▸ onBeforeRouteLeave(leaveGuard): void
Добавлееие навигационного хука, который будет срабатывать каждый раз, когда компонент, соответствующий текущему маршруту, готовится покинуть текущий маршрут. Похоже на beforeRouteLeave, но может использоваться в любом компоненте. Этот хук будет автоматически удален, когда компонент размонтируется.
Параметры
| Название | Тип | Описание |
|---|---|---|
leaveGuard | NavigationGuard | NavigationGuard |
Возвращает
void
onBeforeRouteUpdate
▸ onBeforeRouteUpdate(updateGuard): void
Добавление навигационного хука, который срабатывает каждый раз, когда текущее маршрут готовится к обновлению. Этот хук похож на beforeRouteUpdate, но может использоваться в любом компоненте. Этот хук будет автоматически удален, когда компонент размонтируется.
Параметры
| Название | Тип | Описание |
|---|---|---|
updateGuard | NavigationGuard | NavigationGuard |
Возвращает
void
parseQuery
▸ parseQuery(search): LocationQuery
Transforms a queryString into a LocationQuery object. Accept both, a version with the leading ? and without Should work as URLSearchParams
Параметры
| Name | Тип | Описанеие |
|---|---|---|
search | string | строка поиска для парсинга |
Возвращает
a query object
stringifyQuery
▸ stringifyQuery(query): string
Stringifies a LocationQueryRaw object. Like URLSearchParams, it doesn't prepend a ?
Parameters
| Name | Type | Description |
|---|---|---|
query | LocationQueryRaw | query object to stringify |
Returns
string
string version of the query without the leading ?
useLink
▸ useLink<Name>(props): UseLinkReturn<Name>
Returns the internal behavior of a RouterLink without the rendering part.
Типы параметров
| Название | Тип |
|---|---|
Name | extends string | symbol = string | symbol |
Параметры
| Название | Тип | Описание |
|---|---|---|
props | UseLinkOptions<Name> | описание маршщрута to и опциональный флаг replace |
Возвращает
UseLinkReturn<Name>
useRoute
▸ useRoute<Name>(_name?): RouteLocationNormalizedLoaded<Name>
Возвращает описание текущее маршрута. Эквивалентно использованию $route внутри шаблонов.
Типы параметров
| Название | Тип |
|---|---|
Name | extends string | symbol = string | symbol |
Параметры
| Название | Тип |
|---|---|
_name? | Name |
Возвращает
RouteLocationNormalizedLoaded<Name>
useRouter
▸ useRouter(): Router
Возвращает экземпляр маршрутизатора. Эквивалентно использованию $router внутри шаблонов.
