Хуки жизненного цикла

Система хуков Nuxt для расширения практически любой части приложения.
Узнать больше Docs > 4 X > Guide > Going Further > Hooks.

Хуки приложения (runtime)

Полный список хуков — в исходном коде приложения.

ХукАргументыОкружениеОписание
app:createdvueAppServer & ClientВызывается при создании экземпляра vueApp.
app:errorerrServer & ClientВызывается при фатальной ошибке.
app:error:cleared{ redirect? }Server & ClientВызывается после очистки фатальной ошибки.
vue:setup-Server & ClientВызывается при инициализации корня Nuxt. Колбэк должен быть синхронным.
vue:errorerr, target, infoServer & ClientВызывается, когда ошибка Vue доходит до корневого компонента. Подробнее.
app:renderedrenderContextServerВызывается по завершении SSR-рендеринга.
app:redirected-ServerВызывается перед SSR-редиректом.
app:beforeMountvueAppClientВызывается перед монтированием приложения (только на клиенте).
app:mountedvueAppClientВызывается, когда Vue-приложение смонтировано в браузере.
app:suspense:resolveappComponentClientСобытие Suspense resolved.
app:manifest:update{ id, timestamp }ClientВызывается при обнаружении новой версии приложения.
app:data:refreshkeys?ClientВызывается при вызове refreshNuxtData.
link:prefetchtoClientВызывается при prefetch для <NuxtLink>.
page:startpageComponent?ClientСобытие Suspense pending внутри NuxtPage.
page:finishpageComponent?ClientСобытие Suspense resolved внутри NuxtPage.
page:loading:start-ClientВызывается при запуске setup() новой страницы.
page:loading:end-ClientВызывается после page:finish.
page:transition:finishpageComponent?ClientПосле перехода страницы (onAfterLeave).
dev:ssr-logslogsClientВызывается с массивом серверных логов, переданных на клиент (если включено features.devLogs).
page:view-transition:starttransitionClientВызывается после document.startViewTransition при включённом viewTransition.

Хуки Nuxt (время сборки)

Полный список — в исходном коде схемы.

ХукАргументыОписание
kit:compatibilitycompatibility, issuesРасширение проверок совместимости.
readynuxtВызывается после инициализации Nuxt, когда экземпляр готов к работе.
closenuxtВызывается при корректном завершении экземпляра Nuxt.
restart{ hard?: boolean }Вызывается для перезапуска текущего экземпляра Nuxt.
modules:before-Вызывается при инициализации Nuxt, до установки пользовательских модулей.
modules:done-Вызывается после установки пользовательских модулей.
app:resolveappВызывается после разрешения экземпляра app.
app:templatesappВызывается при генерации NuxtApp — можно добавлять или менять файлы в build-директории (виртуально или в .nuxt).
app:templatesGeneratedappВызывается после компиляции шаблонов в виртуальную ФС.
build:before-Вызывается перед сборкой бандла Nuxt.
build:done-Вызывается после завершения сборки бандла.
build:manifestmanifestВызывается при сборке манифеста (Vite/webpack). Позволяет менять манифест для тегов <script> и <link> в HTML.
builder:generateAppoptionsВызывается перед генерацией приложения.
builder:watchevent, pathВызывается в dev при изменении файла или каталога в проекте.
pages:extendpagesВызывается после сканирования маршрутов страниц из файловой системы.
pages:resolvedpagesВызывается после дополнения маршрутов отсканированными метаданными.
pages:routerOptions{ files: Array<{ path: string, optional?: boolean }> }Вызывается при разрешении файлов router.options. Более поздние элементы переопределяют ранние.
server:devHandlerhandlerВызывается при регистрации dev-middleware на Nitro dev-сервере.
imports:sourcespresetsВызывается при setup — модули могут расширять источники импортов.
imports:extendimportsВызывается при setup — модули могут расширять список импортов.
imports:contextcontextВызывается при создании контекста unimport.
imports:dirsdirsРасширение каталогов для импортов.
components:dirsdirsВызывается в app:resolve — расширение каталогов для автоимпорта компонентов.
components:extendcomponentsРасширение списка компонентов.
nitro:confignitroConfigВызывается перед инициализацией Nitro — настройка конфигурации Nitro.
nitro:initnitroВызывается после инициализации Nitro — регистрация хуков и работа с Nitro.
nitro:build:beforenitroВызывается перед сборкой Nitro.
nitro:build:public-assetsnitroВызывается после копирования public-ресурсов. Позволяет менять их перед сборкой Nitro.
prerender:routesctxРасширение списка маршрутов для пререндеринга.
build:errorerrorВызывается при ошибке сборки.
prepare:typesoptionsВызывается перед записью TS-конфигов (.nuxt/tsconfig.*.json, nuxt.d.ts) — можно добавлять references и декларации.
listenlistenerServer, listenerВызывается при запуске dev-сервера.
schema:extendschemasРасширение схем по умолчанию.
schema:resolvedschemaРасширение разрешённой схемы.
schema:beforeWriteschemaВызывается перед записью схемы.
schema:written-Вызывается после записи схемы.
vite:extendviteBuildContextРасширение контекста Vite.
vite:extendConfigviteInlineConfig, envРасширение конфигурации Vite. Устарело в Nuxt 5+. В Nuxt 5 используется общая конфигурация.
vite:configResolvedviteInlineConfig, envДоступ к разрешённой конфигурации Vite. Устарело в Nuxt 5+. В Nuxt 5 — общая конфигурация.
vite:serverCreatedviteServer, envВызывается при создании Vite-сервера.
vite:compiled-Вызывается после компиляции Vite-сервера.
webpack:configwebpackConfigsВызывается перед настройкой компилятора webpack.
webpack:configResolvedwebpackConfigsДоступ к разрешённой конфигурации webpack.
webpack:compileoptionsВызывается непосредственно перед компиляцией.
webpack:compiledoptionsВызывается после загрузки ресурсов.
webpack:changeshortPathСобытие change в WebpackBar.
webpack:error-Событие done при ошибках в WebpackBar.
webpack:done-Событие allDone в WebpackBar.
webpack:progressstatesArrayСобытие progress в WebpackBar.

Хуки Nitro (runtime, сервер)

См. Nitro для полного списка хуков.

ХукАргументыОписаниеTypes
dev:ssr-logs{ path, logs }Вызывается в конце цикла запроса с массивом серверных логов.
render:responseresponse, { event }Вызывается перед отправкой ответа.response, event
render:htmlhtml, { event }Вызывается перед формированием HTML.html, event
render:islandislandResponse, { event, islandContext }Вызывается перед формированием HTML острова.islandResponse, event, islandContext
close-Вызывается при закрытии Nitro.-
errorerror, { event? }Вызывается при ошибке.error, event
requesteventВызывается при получении запроса.event
beforeResponseevent, { body }Вызывается перед отправкой ответа.event, unknown
afterResponseevent, { body }Вызывается после отправки ответа.event, unknown