next项目的多语言配置
本文的内容不是全面、通用、详尽的技术资料。 仅是个人实践记录,适用于本人已发布的网站。 供参考。 我发布此文时为2025年10月底,next.js的官方已推出16.0.0,我创建的新网站也是按照最新的版本来。
官方指南
关键词:Internationalization
**我的所有next项目均是基于App Router模式,typescript,pnpm包管理,之后不再说明。
路由
关键词: routing
本地化
关键词: localization
翻译
关键词:translation
学习资料
官方提供的极简路由和翻译案例(Minimal i18n routing and translations)](https://github.com/vercel/next.js/tree/canary/examples/i18n-routing)
案例中只是一个已经完成的项目,没有开发过程,所以我们分析一下步骤,然后结合我最近写的一个网站(next 15.X)照做。
案例中有2个我从未接触的组件:
@formatjs/intl-localematcher, negotiator,都是老项目了。
由于案例中不涉及翻译(t),所以没有用到next-intl等组件。
所以我看一下就决定按照之前项目的做法来。 此案例太老,只能参考。
接下来我们可以直接去看next-intl的官方教程。 为啥选这个呢?可能是因为名称简洁,而且在推荐列表里放在最上面吧,多语言的方案太多了。