react-localize-redux无法读取未定义的属性“ map”

时间:2018-09-21 09:08:10

标签: javascript reactjs redux

我正在尝试使用react-localize-redux从JSON文件加载翻译,并且不断收到此错误。这对我来说还很新,如果这很明显,我深表歉意。从阅读文档可以看出,这种“应该”的工作是公平的吗?

我收到的错误消息:error

translate.js

import { combineReducers, createStore } from 'redux'
import { localizeReducer, initialize, addTranslationForLanguage, getTranslate } from 'react-localize-redux'
import translationsEn from '../../../nls/en.json'

const localeStore = createStore(combineReducers({
  locale: localizeReducer
}))

const languages = ['en']
localeStore.dispatch(initialize(languages))
localeStore.dispatch(addTranslationForLanguage(translationsEn, 'en'))

export default getTranslate(localeStore.getState().locale)

以及在我的组件中:

import translate from '../state/translate/translate'

...

<span className='node-output-schema__title'>{translate('outputSchema.title')}</span>

有什么想法可能出什么问题吗?

2 个答案:

答案 0 :(得分:0)

由于未定义您的属性而引发此错误,因此请检查您的错误并获取确切的行(您可以在浏览器的控制台选项卡上找到该错误),并检查在那里使用了哪个属性,并检查是否在该位置填充了该属性没有填写您的财产,然后进行设置

答案 1 :(得分:0)

似乎您在这里混入了一些不同的框架。

本地化软件包称为-react-localize-redux。 但是在您的错误日志中,我可以看到您使用的是一些角度。

我也刚刚检查了react-localize-redux软件包中的文档,看来您使用的是过时的版本。 对我来说,只为您的应用提供一个Provider,然后使用更高阶的组件就足够了(从“ react-localize-redux”导入{withLocalize}; )

我也建议您使用此程序包,该程序包更易于处理(确实我自己将其用于项目中) react-18next(https://github.com/i18next/react-i18next