Next.js 12 正式发布,速度最高提升 5 倍
Next.js 12 被官方誉为是有史以来更新幅度最大的版本,该版本带来的变化如下:
版本特性
- Rust 编译器:本地刷新速度提高了约 3 倍,构建速度提高了约 5 倍;
- 中间件(Beta):在 Next.js 中使用代码而不是配置,实现了充分的灵活性;
- 支持 React 18:现在支持 Native Next.js 的 API,以及 React 18 中的 Suspense;
- AVIF 支持:与 WebP 相比,可减少图片体积约 20%;
- 本地 ES 模块支持:与标准化的模块系统保持一致;
- URL 导入(Alpha):从任何 URL 导入包,不需要安装或单独的构建步骤;
- React 服务器组件(Alpha):包括 SSR Streaming;
开发者可以通过运行 npm i next@latest 进行更新。
重大变化
- 在将 webpack 5 设为 Next.js 11 中的默认版本后,现在正式在 Next.js 中移除了 webpack 4;
- 不再需要
next.config.js中的target next/image现在使用span而不是div作为 Wrapping 元素;- Node.js 的最低版本已经从
12.0.0升级至12.22.0,这是第一个原生支持 ES 模块的 Node.js 版本;
其他改进
- 将
pages/_app.js或pages/_document.js添加到你的应用程序,现在会自动替换内置版本,而不需要重新启动 Next.js CLI; - ESLint 集成现在支持在
Next lint中使用--file标志进行单文件检查; - Next.js 12 现在支持设置自定义
tsconfig.json路径; next.config.mjs现在支持将配置写成 ES 模块;- 对静态页面的检查现在使用共享工作池运行;
- 快速刷新现在使用 WebSocket 连接而不是 EventSource 连接;
- ……
更多详情可查看:https://nextjs.org/blog/next-12