何时使用next-i18next或其他i18n库?



对不起,这可能是一个愚蠢的问题,但我只是想确保。

我试图在我的应用程序中添加一些国际化,但一直很困惑。目前我是Next13(不是实验性的,至少还没有),通过使用香草Nextjs在两种语言之间切换。然而,我看到很多人使用next-i18next,它看起来像很多设置。

我应该使用这个包吗?还是更大的项目?换成实验性的Next13会不会更好,一切都是SSR?

正如你所看到的,我只是想弄清楚它解决了什么问题。也许它使它更容易,但它似乎是一个相当多的设置。

我很感激任何帮助!非常感谢。

nextjs的配置只处理与地区相关的路由,它不做任何翻译逻辑。所以你不能"切换"在使用vanilla nextjs的两种语言之间,只更改locale url。
这需要大量的设置,因为添加翻译逻辑到一个应用程序没有它将需要大量的设置。一般来说,多语言支持增加了代码的复杂性。实验性的Next13甚至更糟,因为它基本上把处理多语言逻辑的整个任务委托给了用户,甚至路由。纯粹的SSR会带来很多危害,因为前端国际化围绕着翻译构建时已知的值。在每个请求中获取和传递它们是一种开销和带宽浪费(尽管它对Vercel来说更大)。

正如你所看到的,我只是想弄清楚它解决了什么问题。

顾名思义,基本上是将i18next适配到NextJS。如果没有它,你就必须自己编写逻辑来处理nextjs呈现页面及其上下文的千万亿种方式。

最新更新