i18Next:仅对某些语言使用语言环境,其余使用语言 + 位置

i18Next: use locale only for some languages and use language + location for rest

我对 i18next 库有疑问。如果我有这些可以从浏览器检测到的语言环境,

de
en-US
es
fr
it
ja
ko
pt-br
zh-cn
zh-tw

有没有一种方法可以将其配置为仅尊重某些语言环境而不尊重其他语言环境的语言?例如,当谈到 en-US 时,我希望加载的语言是 en 所以当我调用 .language.languages 方法时,它将包含 en 而不是 en-US。但是,对于其他有破折号的语言环境,如 pt-brzh-cnzh-tw,它们将保持不变,(所以不是 return 只是 zh) .

这可能吗?

提前致谢!

是的,使用配置选项:https://www.i18next.com/overview/configuration-options

加载选项设置为“all”时,它将首先检查“en-US”,如果未找到,它将使用“en”...并且 i18next.resolvedLanguage 值将是“en”

还有其他配置选项,例如 supportedLngs 或 fallbackLng,您可以用来调整您的用例。