- 配置参考 Configuration
- 入门指南
- 介绍 Introduction
- 安装 Installation
- 配置 Configuration
- 视图 Views
- 资产 Assets
- 路由 Routing
- SEO and Meta
- 过渡 Transitions
- 数据获取 Data Fetching
- 状态管理 State Management
- 错误处理 Error handling
- 层结构 Layers
- 部署 Deployment
- 测试 Testing
- 升级指南 Upgrade Guide
- 核心概念
- 自动导入 Auto imports
- Vue.Js Vue.js Development
- 渲染模式 Rendering Modes
- 服务端引擎 Server Engine
- 模块化 Modules
- ES模块 ES Modules
- TypeScript TypeScript
- 目录结构
- 可组合项
- 组件
- 工具库
- fetch
- abortNavigation
- addRouteMiddleware
- clearError
- clearNuxtData
- createError
- defineNuxtComponent
- defineNuxtRouteMiddleware
- definePageMeta
- navigateTo
- onBeforeRouteLeave
- onBeforeRouteUpdate
- onNuxtReady
- prefetchComponents
- preloadComponents
- preloadRouteComponents
- refreshNuxtData
- reloadNuxtApp
- setPageLayout
- setResponseStatus
- showError
- updateAppConfig
- CLI 命令
- 进阶
- 深入探究
- 迁移指南
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
生命周期钩子 Lifecycle Hooks
Nuxt 提供了强大的 hooking 系统,可以使用 hooks 扩展几乎所有方面。 相关阅读:going-further > hooks
App Hooks (运行时)
检查应用程序源代码 以获取所有可用的挂钩。
钩子 | 参数 | 环境 | 描述 |
---|---|---|---|
app:created | vueApp | Server & Client | 在创建初始vueApp 实例时调用。 |
app:error | err | Server & Client | 发生致命错误时调用。 |
app:error:cleared | { redirect? } | Server & Client | 发生致命错误时调用。 |
app:data:refresh | keys? | Server & Client | (内部的) |
vue:setup | - | Server & Client | (内部的) |
vue:error | err, target, info | Server & Client | 当vue的error传播到根组件时调用。 |
app:rendered | renderContext | Server | SSR 渲染完成时调用。 |
app:redirected | - | Server | 在 SSR 重定向之前调用。 |
app:beforeMount | vueApp | Client | 仅在客户端,安装应用程序之前调用。 |
app:mounted | vueApp | Client | 当 Vue 应用程序在浏览器中初始化并挂载时调用。 |
app:suspense:resolve | appComponent | Client | 关于 Suspense 已解决的事件。 |
link:prefetch | to | Client | 当观察到<NuxtLink> 被预取时调用。 |
page:start | pageComponent? | Client | 调用 Suspense 未决事件。 |
page:finish | pageComponent? | Client | 调用 Suspense 解决事件。 |
page:transition:finish | pageComponent? | Client | 页面转换后 onAfterLeave 事件。 |
Nuxt Hooks (构建时))
Check the schema source code for all available hooks.
钩子 | 参数 | 描述 |
---|---|---|
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 将用于在最终 HTML 中呈现 <script> 和<link> 标签的清单。 |
builder:generateApp | options | 在生成应用程序之前调用。 |
builder:watch | event, path | 当观察者发现项目中的文件或目录发生更改时,在开发的构建时调用。 |
pages:extend | pages | 在解析页面路由后调用。 |
server:devHandler | handler | 在 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:serverCreated | viteServer, env | 创建 Vite 服务器时调用。 |
vite:compiled | - | Vite 服务端编译完成后调用。 |
webpack:config | webpackConfigs | 在配置 webpack 编译器之前调用。 |
webpack:compile | options | 在编译之前调用。 |
webpack:compiled | options | 加载资源后调用。 |
webpack:change | shortPath | 在 WebpackBar 上调用 change 。 |
webpack:error | - | 如果 WebpackBar 上有错误,则在“完成”时调用。 |
webpack:done | - | 在 WebpackBar 上调用 allDone。 |
webpack:progress | statesArray | 在 WebpackBar 上调用 progress 。 |
Nitro App Hooks(运行时,服务端)
钩子 | 参数 | 说明 | 类型 |
---|---|---|---|
render:response | response, { event } | 在发送响应之前调用。 | response, event |
render:html | html, { event } | 在构造 HTML 之前调用。 | html, event |
render:island | islandResponse, { event, islandContext } | Called before constructing the island HTML. | islandResponse, event, islandContext |
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论