下一个 JS 中输入元素的国际化

时间:2021-06-21 16:28:27

标签: javascript reactjs internationalization next.js i18next

我在使用 next js 构建的应用程序中使用 i18next 包。只要我们在

中使用 useTranslation 钩子中的 t() ,它就可以正常工作,但是在初始渲染时 t('placeholder') 会选择 es(西班牙语)翻译,这是后备语言。这会导致输入等组件显示错误的占位符。

<Input
 placeholder={t('placeholder')}
 type="text"
></Input>
i18n.use(LanguageDetector).init({
  detection: options,
  fallbackLng: 'es',
  resources,
  supportedLngs: ['en', 'es'],
})

我直接在组件中加载了翻译文件,并将它们用作对象 EN.placeholder 而不是 t(''placeholder) 并且它起作用了,但是有没有更好的方法来解决这个问题?我猜这是因为下一个 JS 使用内置的服务器端渲染

0 个答案:

没有答案