Поддержка React Application i18n
У нас есть приложение React, в котором все метки виджетов читаются из файла свойств,
Файл свойств:
export const properties = {
dashboardcrumb_label: 'DASHBOARD',
channelcrumb_label: 'CHANNELS',
jobcard_header: 'JOBS',
cancel_label: 'CANCEL'
}
Использование файла js (пример):
import { properties } from '../../../../resources/label_property'
<FlatButton label={properties.cancel_label}
Теперь у нас есть требование сделать его совместимым с i18n. пожалуйста, предложите более простой способ достижения i18n, где я могу повторно использовать этот файл свойств без особых изменений в js
1 ответ
Вы можете обернуть свой компонент с withNamespace
Hoc следующим образом:
import { withNamespaces } from 'react-i18next';
// it would add 't' and 'lng' in the props
const { t } =this.props;
<FlatButton label={t('cancel_label')}
Лично я бы предложил вам использовать reaact-intl