用途:把当前项目升级到最新 Next.js 版本,流程参照官方迁移指南。
主要能力:读取 package.json 识别当前 Next.js 版本及相关依赖(React、React DOM 等);通过 WebFetch 获取官方升级文档,包括 codemods 页面(https://nextjs.org/docs/app/guides/upgrading/codemods)和版本专属指南,如 https://nextjs.org/docs/app/guides/upgrading/version-16、version-15、version-14;根据当前版本判断适用的迁移步骤,跨大版本时按增量升级(例如 13 → 14 → 15)。
使用方式:先运行 codemod 自动化处理破坏性变更,命令为 npx @next/codemod@latest <transform> <path>。常见 transform 有 next-async-request-api(v15 异步 Request API)、next-request-geo-ip(迁移 geo/ip 属性,v15)、next-dynamic-access-named-export(转换动态导入,v15)。随后同步升级依赖:npm install next@latest react@latest react-dom@latest;如有 TypeScript,再执行 npm install @types/react@latest @types/react-dom@latest。之后对照升级指南检查需要手动修改之处,包括 API 变更(如 v15 的 async params)、next.config.js 配置变更、被移除的废弃功能。最后测试:运行 npm run build 检查构建错误,运行 npm run dev 并测试关键功能。
适用场景:需要将现有 Next.js 项目迁移到新版,尤其是跨大版本升级时按官方路径逐步处理。
限制:资料未提供支持的 Next.js 版本上限、是否覆盖所有历史版本、失败回滚机制或其他工具集成信息,暂未提供。