ReactJS & i18n. js: переводы со ссылками - PullRequest
0 голосов
/ 16 апреля 2020

У меня есть ReactJS проект, который использует i18n. js для переводов.

В файле i18n JSON У меня есть такая строка:

"register": {
    "terms": "I have read and accept the Terms of Service"
}

Я хочу только часть «Условий обслуживания» в предложении быть ссылкой.

Сначала я попробовал что-то вроде этого:

<label className="lead">
    {i18n.t('register.terms').substr(0, 27)}<a href="#">{i18n.t('register.terms').substr(27, 43)}</a>
</label>

Но, конечно, он не работает ни с одним другой язык, кроме engli sh.

Есть ли способ сделать это , не разбивая строковое значение на два поля в файле JSON?

1 Ответ

0 голосов
/ 04 мая 2020

Ответ:

Вы можете создать массив.

"terms": ["I have read and accept the ", "Terms of Service"]

И затем получить такие значения:

<p>{i18n.t('terms.0')}<a href="#">{i18n.t('terms.1')}</a></p>
...