Хуки жизненного цикла
Nuxt предоставляет мощную систему хуков для расширения практически всех аспекты с их помощью.
Хуки приложения (runtime)
Проверьте исходный код приложения на наличие всех доступных хуков.
Хук | Аргументы | Окружение | Описание |
---|---|---|---|
app:created | vueApp | Сервер и клиент | Вызывается при создании начального экземпляра vueApp . |
app:error | err | Сервер и клиент | Вызывается при возникновении фатальной ошибки. |
app:error:cleared | { redirect? } | Сервер и клиент | Вызывается при возникновении фатальной ошибки. |
app:data:refresh | keys? | Сервер и клиент | (внутренний) |
vue:setup | - | Сервер и клиент | (внутренний) |
vue:error | err, target, info | Сервер и клиент | Вызывается, когда ошибка vue распространяется на корневой компонент. Подробнее. |
app:rendered | renderContext | Сервер | Вызывается, когда рендеринг SSR закончен. |
app:redirected | - | Сервер | Вызывается перед переадресацией SSR. |
app:beforeMount | vueApp | Клиент | Вызывается перед монтированием приложения, вызывается только на клиенте. |
app:mounted | vueApp | Клиент | Вызывается, когда приложение Vue инициализируется и монтируется в браузере. |
app:suspense:resolve | appComponent | Клиент | Вызывается при событии resolved в Suspense. |
app:manifest:update | { id, timestamp } | Клиент | Вызывается при обнаружении новой версии вашего приложения. |
link:prefetch | to | Клиент | Вызывается, когда происходит предварительная выборка . |
page:start | pageComponent? | Клиент | Вызывается при событии pending в Suspense. |
page:finish | pageComponent? | Клиент | Вызывается при событии resolved в Suspense. |
page:loading:start | - | Клиент | Вызывается, когда выполняется setup() новой страницы. |
page:loading:end | - | Клиент | Вызывается после page:finish . |
page:transition:finish | pageComponent? | Клиент | После события перехода страницы onAfterLeave. |
dev:ssr-logs | logs | Клиент | Вызывается с массивом серверных логов, которые были переданы клиенту (если features.devLogs включен) |
page:view-transition:start | transition | Клиент | Вызывается после вызова document.startViewTransition при включенной экспериментальной поддержке viewTransition. |
Nuxt хуки (время сборки)
Проверьте исходный код схемы для всех доступных хуков.
Хук | Аргументы | Описание |
---|---|---|
kit:compatibility | compatibility, issues | Позволяет расширять проверки совместимости. |
ready | nuxt | Вызывается после инициализации Nuxt, когда экземпляр Nuxt готов к работе. |
close | nuxt | Вызывается при завершении работы экземпляра Nuxt. |
restart | { hard?: boolean } | Для перезапуска текущего экземпляра Nuxt. |
modules:before | - | Вызывается во время инициализации Nuxt, до установки пользовательских модулей. |
modules:done | - | Вызывается во время инициализации Nuxt, после установки пользовательских модулей. |
app:resolve | app | Вызывается после разрешения экземпляра app . |
app:templates | app | Вызывается во время генерации NuxtApp , чтобы позволить настраивать, модифицировать или добавлять новые файлы в директорию сборки (либо виртуально, либо записывая их в .nuxt ). |
app:templatesGenerated | app | Вызывается после компиляции шаблонов в виртуальную файловую систему (vfs). |
build:before | - | Вызывается перед запуском сборщика пакета Nuxt. |
build:done | - | Вызывается после завершения сборки пакета Nuxt. |
build:manifest | manifest | Вызывается во время построения манифеста с помощью Vite и webpack. Это позволяет настраивать манифест, который Nitro будет использовать для рендеринга тегов <script> и <link> в конечном HTML. |
builder:generateApp | options | Вызывается перед генерацией приложения. |
builder:watch | event, path | Вызывается во время сборки в режиме разработки, когда наблюдатель обнаруживает изменения в файле или директории проекта. |
pages:extend | pages | Вызывается после сканирования маршрутов страниц из файловой системы. |
pages:resolved | pages | Вызывается после того, как маршруты страниц были дополнены отсканированными метаданными. |
pages:routerOptions | { files: Array<{ path: string, optional?: boolean }> } | Вызывается при разрешении файлов router.options . Элементы, находящиеся позже в массиве, переопределяют предыдущие. |
server:devHandler | handler | Вызывается при регистрации middleware на dev-сервере Nitro. |
imports:sources | presets | Вызывается при настройке, позволяя модулям расширять источники. |
imports:extend | imports | Вызывается при настройке, позволяя модулям расширять импорты. |
imports:context | context | Вызывается при создании контекста unimport |
imports:dirs | dirs | Позволяет расширять директории импорта. |
components:dirs | dirs | Вызывается внутри app:resolve , позволяя расширить директории, которые сканируются на предмет автоматически импортируемых компонентов. |
components:extend | components | Позволяет расширять новые компоненты. |
nitro:config | nitroConfig | Вызывается перед инициализацией Nitro, позволяя настроить конфигурацию Nitro. |
nitro:init | nitro | Вызывается после инициализации Nitro, что позволяет регистрировать хуки Nitro и взаимодействовать с Nitro напрямую. |
nitro:build:before | nitro | Вызывается перед построением экземпляра Nitro. |
nitro:build:public-assets | nitro | Вызывается после копирования общедоступных ресурсов. Позволяет модифицировать общедоступные ресурсы перед построением сервера Nitro. |
prerender:routes | ctx | Позволяет расширять маршруты для предварительного рендеринга. |
build:error | error | Вызывается при возникновении ошибки во время сборки. |
prepare:types | options | Вызывается перед тем, как Nuxi запишет .nuxt/tsconfig.json и .nuxt/nuxt.d.ts , позволяя добавлять пользовательские ссылки и объявления в nuxt.d.ts , или непосредственно изменять опции в tsconfig.json . |
listen | listenerServer, listener | Вызывается при загрузке сервера разработки. |
schema:extend | schemas | Позволяет расширять схемы по умолчанию. |
schema:resolved | schema | Позволяет расширять разрешенную схему. |
schema:beforeWrite | schema | Вызывается перед записью данной схемы. |
schema:written | - | Вызывается после записи схемы. |
vite:extend | viteBuildContext | Позволяет расширить контекст Vite по умолчанию. |
vite:extendConfig | viteInlineConfig, env | Позволяет расширить конфигурацию Vite по умолчанию. |
vite:configResolved | viteInlineConfig, env | Позволяет прочитать разрешенную конфигурацию Vite. |
vite:serverCreated | viteServer, env | Вызывается при создании сервера Vite. |
vite:compiled | - | Вызывается после компиляции сервера Vite. |
webpack:config | webpackConfigs | Вызывается перед настройкой компилятора webpack. |
webpack:configResolved | webpackConfigs | Позволяет прочитать разрешенную конфигурацию webpack. |
webpack:compile | options | Вызывается непосредственно перед компиляцией. |
webpack:compiled | options | Вызывается после загрузки ресурсов. |
webpack:change | shortPath | Вызывается при change в WebpackBar. |
webpack:error | - | Вызывается при done с ошибками в WebpackBar. |
webpack:done | - | Вызывается при allDone в WebpackBar. |
webpack:progress | statesArray | Вызывается при progress в WebpackBar. |
Хуки приложения Nitro (runtime, server-side)
См. Nitro для всех доступных хуков.
Хук | Аргументы | Описание | Типы |
---|---|---|---|
dev:ssr-logs | { path, logs } | Сервер | Вызывается в конце цикла запроса с массивом серверных логов. |
render:response | response, { event } | Вызывается перед отправкой ответа. | response, event |
render:html | html, { event } | Вызывается перед созданием HTML. | html, event |
render:island | islandResponse, { event, islandContext } | Вызывается перед созданием острова HTML. | islandResponse, event, islandContext |
close | - | Вызывается при закрытии Nitro. | - |
error | error, { event? } | Вызывается при возникновении ошибки. | error, event |
request | event | Вызывается при получении запроса. | event |
beforeResponse | event, { body } | Вызывается перед отправкой ответа. | event, unknown |
afterResponse | event, { body } | Вызывается после отправки ответа. | event, unknown |