Документация 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
внутри шаблонов.