Поддержка React Application i18n - PullRequest
0 голосов
/ 23 января 2019

У нас есть приложение 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 Ответ

0 голосов
/ 23 января 2019

Вы можете заключить свой компонент в 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

...