Использование активных компонентов в строке для response-intl-universal - PullRequest
0 голосов
/ 18 сентября 2018

Попытка использовать Link внутри строки i18n, но она не читает компонент Link должным образом. Как включить реактивные компоненты в Reaction-Intl-Universal?

языковой файл JSON

{
  "somekey": "some<Link to={ link } somewhere </Link>"
}

Javascript

import { Link } from 'react-router'

<Fragment>{ intl.getHTML('somekey', { link: `/somewhere` }) }</Fragment>

1 Ответ

0 голосов
/ 07 декабря 2018

Вы не можете передать компонент в реакции-intl-универсальный метод getHTML (). Когда вы вызываете этот метод, response-intl-universal создает элемент span и устанавливает его внутренний HTML. Таким образом, перевод, который вы возвращаете с помощью intl.getHTML (), является просто строкой HTML, а не компонентом, который будет переведен в HTML по реакции.

Вы должны разбить ваш перевод на 2 части и написать что-то вроде:

import { Link } from 'react-router'

<Fragment>
  {intl.get('contentBeforeLink')}
  <Link to="/somewhere">
    {intl.get('contentInsideLink')}
  </Link>
</Fragment>
...