尤雨溪强烈推荐的这个库你一定要知道 ⚡️⚡️⚡️

前言

今天带大家看看尤雨溪在推特墙裂推荐的 Nitro v3 这个库!

往期精彩推荐

正文

Nitro 是一个全栈框架,兼容任何运行时。

Nitro v3 可以通过 Vite 插件形式集成,扩展 dev 服务器为生产服务器,支持 vite build 统一输出前后端代码。

快速启动与渐进集成

Nitro 支持 npx create-nitro-app 一键创建项目,或在现有 Vite 项目中安装 nitro 包并添加插件:

javascript 复制代码
import { defineConfig } from "vite";
import { nitro } from "nitro/vite";

export default defineConfig({
  plugins: [nitro()]
});

这样配置后 Vite 的 HMR 无缝延伸至后端路由和 API,可以在单一项目中处理前后端逻辑,无需切换工具链。

路由与生命周期优化

Nitro 的文件系统路由(routes/目录)与 Vite 的模块解析结合,自动映射API端点,支持动态参数、方法特定(如.get.ts)和中间件。

bash 复制代码
routes/
  api/
    test.ts      <-- /api/test
  hello.get.ts   <-- /hello (GET only)
  hello.post.ts  <-- /hello (POST only)

文件中只需要通过函数暴露对象即可:

js 复制代码
import { defineHandler } from "nitro/h3";

export default defineHandler(() => {
  return { hello: "API" };
});

生命周期从路由规则到全局中间件,再到自定义服务器入口和渲染器,确保请求高效处理。

渲染器与SSR支持

Nitro 的渲染器(renderer)捕捉未匹配路由,支持自动 index.html 或自定义模板,使用 Rendu 预处理器注入动态内容。自定义渲染器通过defineRenderHandler生成响应!

插件与扩展性

Nitro 插件(plugins/目录)在启动时运行,支持钩子(如closeerrorrequest)扩展行为。

js 复制代码
// nitro.config.ts
export default defineNitroPlugin((nitro) => {
  nitro.hooks.hook("close", async () => {
    // Will run when nitro is being closed
  });
})

支持 hook 时机如下:

javascript 复制代码
"close", () => {}
"error", (error, { event? }) => {}
"render:response", (response, { event }) => {}
"request", (event) => {}
"beforeResponse", (event, { body }) => {}
"afterResponse", (event, { body }) => {}

最后

Nitro v3 与 Vite 搭配,提供高效的全栈方案,从快速启动到路由渲染,再到插件扩展,可以全方位的优化工作流!

今天的分享就这些了,感谢大家的阅读,如果文章中存在错误的地方欢迎指正!

往期精彩推荐

相关推荐
云水一下1 小时前
从零开始!VMware安装Fedora Workstation 44桌面系统完整教程
前端
小码哥_常3 小时前
安卓黑科技:实现多平台商品详情页一键跳转APP
前端
killerbasd3 小时前
还是迷茫 5.3
前端·react.js·前端框架
不会敲代码14 小时前
TCP/IP 与前端性能:从数据包到首次渲染的底层逻辑
前端·tcp/ip
kyriewen4 小时前
奥特曼借GPT-5.5干杯,而你的Copilot正按Token收钱
前端·github·openai
AC赳赳老秦4 小时前
投标合规提效:用 OpenClaw 实现标书 / 合同自动审核、关键词校验、格式优化,降低废标风险
开发语言·前端·python·eclipse·emacs·deepseek·openclaw
kyriewen4 小时前
代码写成一锅粥?3个设计模式让你的项目“起死回生”
前端·javascript·设计模式
千寻girling4 小时前
《 Git 详细教程 》
前端·后端·面试
之歆6 小时前
DAY08_CSS浮动与行内块布局实战指南(下)
前端·css
yqcoder6 小时前
CSS Position 全解析:5 种定位模式详解
前端·css