无法使用React和react-i18next读取未定义的属性选项

时间:2018-07-13 17:32:54

标签: reactjs i18next react-i18next

我有以下代码尝试在要翻译的react项目中使用i18next。

但是在调用应用程序时,我收到一个错误,即在I18n组件中发生了TypeError: Cannot read property 'options' of undefined

// i18n components
import i18n from "/modules/ui/i18n";s
import { I18n } from 'react-i18next';
console.log(i18n);
export const renderRoutes = () => (
  <I18n>
    {
      (t, { i18n }) => (
        <Router history={browserHistory}>
          <Switch>
            <Route exact path="/" component={LandingPage} />
          </Switch>
        </Router>
      )
    }
  </I18n>
);

我添加了log语句,它返回一个带有i18n属性的明确定义的options对象。不知道该怎么办。

如果属性与路由器功能不兼容并且发生了相同的问题,我已经将该属性移到了特定的组件中。

更新

问题出在i18n组件中。

i18n
  .use(LanguageDetector)
  .use(Backend)
  .init({ ... })

已更改为

i18n
  .use(LanguageDetector)
  .use(Backend)
  .use(reactI18nextModule)
  .init({ ... })

问题已解决。

1 个答案:

答案 0 :(得分:1)

我在缺少.use(reactI18NextModule)部分的更新中添加了答案。