高级
底层选项。大多数项目都不需要修改这些选项。
Note
本页所有示例都假设已在 nitro.config.ts 中导入以下内容:
import { defineConfig } from "nitro";#dev
- 默认值:开发环境为
true,生产环境为false
Warning
这是高级配置。配置错误可能导致问题。
export default defineConfig({
dev: true, // force development mode behavior
});#typescript
- 默认值:
{}
TypeScript 选项。tsConfig 是打包器用于 JSX 选项和路径别名的配置,默认为项目的 tsconfig.json。tsconfigPaths(默认值:true)会为服务器源文件解析其中的路径别名(compilerOptions.paths)。
export default defineConfig({
typescript: {
tsConfig: {
compilerOptions: {
jsx: "react-jsx",
},
},
},
});#hooks
Warning
这是高级配置。配置错误可能导致问题。
Nitro 钩子。更多信息请参阅 hookable。
export default defineConfig({
hooks: {
compiled(nitro) {
console.log("Build compiled successfully!");
},
},
});名称相同的钩子不会互相覆盖。部署预设定义的钩子会先运行,然后运行配置中的钩子。定义同名钩子不再会禁用预设中的钩子。
#commands
Warning
这是高级配置。配置错误可能导致问题。
预览和部署命令提示通常由部署预设填充。
deploy 可以是 Shell 命令(./ 路径相对于输出目录解析),也可以是接收 Nitro 实例的函数,供以编程方式部署的预设使用。两者都可通过 nitro deploy 和 deploy 构建器 API 运行。
export default defineConfig({
commands: {
preview: "node ./server/index.mjs",
deploy: "npx wrangler deploy ./server/index.mjs",
},
});#devErrorHandler
Warning
这是高级配置。配置错误可能导致问题。
开发错误的自定义错误处理函数。
export default defineConfig({
devErrorHandler: (error, event) => {
return new Response(`Dev error: ${error.message}`, { status: 500 });
},
});#tracingChannel
🧪 实验性功能
- 类型:
boolean|{ srvx?: boolean, h3?: boolean, unstorage?: boolean, db0?: boolean } - 默认值:
false
tracingChannel 选项会为请求处理启用 TracingChannel 插桩。该功能已接入 Node.js,也适用于 Bun、Deno 和开发预设,即所有提供 node:diagnostics_channel 的运行时。已发布的 srvx.request 和 h3.request 通道在这些运行时中仍可用,可供 APM 工具和自定义订阅器使用。
传入 true 可启用所有通道,也可以传入对象逐一切换通道。
export default defineConfig({
tracingChannel: true,
});#framework
- 默认值:
{ name: "nitro", version: "<current>" }
框架信息。由预设和构建信息使用,通常由上层框架(例如 Nuxt)设置。
export default defineConfig({
framework: { name: "my-framework", version: "2.0.0" },
});#manifest
构建清单选项。使用 deploymentId 可在构建清单中包含自定义部署标识符(部分预设会从平台环境变量中自动填充)。
export default defineConfig({
manifest: { deploymentId: process.env.DEPLOY_ID },
});