作为领先的现代前端框架,Next.js 15引入了一系列创新功能和改进,旨在提高开发效率🚀并增强应用性能⚡。
1.支持React 19 RC
Next.js 15版本现在支持React 19 RC,这意味着开发者可以立即体验React最新版本带来的新特性。React 19 RC在客户端和服务器端都引入了新功能,如Actions,这将大大简化我们的代码逻辑。
更新指南:
npm i next@rc react@rc react-dom@rc eslint-config-next@rc
2. 实验性React编译器
React编译器是由Meta团队开发的实验性工具🛠️。它理解JavaScript语义和React规则,自动优化你的代码。这不仅提升了应用性能⚡,还简化了开发过程🎨。
安装 babel-plugin-react-compiler:
npm install babel-plugin-react-compiler
然后在next.config.js
中配置 experimental.reactCompiler
:
const nextConfig = {
experimental: {
reactCompiler: true,
},
};
module.exports = nextConfig;
3. 部分预渲染
Next.js 15引入了名为部分预渲染的新布局和页面配置功能🏗️。这个实验性功能允许开发者逐步采用新的布局和页面配置,在控制页面渲染策略方面提供更大的灵活性🌐。
要使用部分预渲染功能,需要在 next.config.js
中设置配置:
const nextConfig = {
experimental: {
ppr: 'incremental',
},
};
module.exports = nextConfig;
4. next/after API
另一项试验性实验性功能是 next/after
,这是一个允许我们在响应完成流式传输后执行代码的API。这给了开发者更多的控制权,并能够更精细地管理应用生命周期⚙️。
要使用它,需要在 next.config.js
中配置 experimental.after
:
const nextConfig = {
experimental: {
after: true,
},
};
module.exports = nextConfig;
5. create-next-app更新
create-next-app工具也进行了更新,采用了现代设计并增加了新功能,如启用带有Turbopack的本地开发🌟。
运行 create-next-app
,会出现一个新的提示,询问您是否要为本地开发启用Turbopack(默认为否)🚀。
要启用Turbopack,使用:
npx create-next-app@rc --turbo
6. 外部包捆绑
Next.js 15为Pages Router添加了新的配置选项,使外部包的捆绑更加灵活和强大。这将帮助我们更好地管理应用依赖项并提高应用加载速度。
捆绑外部软件包可以提高应用程序的冷启动性能。 App Router 外部软件包默认捆绑在 ,您可以使用新的 serverExternalPackages
配置选项。
为了统一 APages 路由器之间的配置,我们引入了一个新选项 bundlePagesRouterDependencies
以匹配 App 路由器的默认自动捆绑。
const nextConfig = {
// Automatically bundle external packages in the Pages Router:
bundlePagesRouterDependencies: true,
// Opt specific packages out of bundling for both App and Pages Router:
serverExternalPackages: ['package-name'],
};
module.exports = nextConfig;
7. 缓存更新
在新版本中,Next.js不再缓存fetch请求、GET路由处理程序和客户端导航🌐。这一变化有助于避免常见的缓存问题,确保我们的应用保持响应性和最新状态🚀。
Next.js 15的发布无疑将为前端开发带来新的活力🎉。它不仅提高了开发效率🚀,还增强了应用性能和用户体验🌟。如果您是前端开发者,Next.js 15绝对值得一试。
首发于公众号 大迁世界,欢迎关注。📝 每周一篇实用的前端文章 🛠️ 分享值得关注的开发工具 ❓ 有疑问?我来回答
本文 GitHub https://github.com/qq449245884/xiaozhi 已收录,有一线大厂面试完整考点、资料以及我的系列文章。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。