我有以下代码尝试在要翻译的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({ ... })
问题已解决。
答案 0 :(得分:1)
我在缺少.use(reactI18NextModule)
部分的更新中添加了答案。