Я могу использовать компонент перевода (из react-jhipster), когда хочу добавить переведенную строку в компонент:
<p><Translation contentKey = "my.key">Some text</Translation></p>
Но если я хочу передать переведенную строку другому компоненту, как мне это сделать? Нравиться:
<MyComponent text = {{translate("my.key")}} />
Это от реакции-jhipster
Как вы сказали в комментарии, вы используете библиотеку react-jhipster.
Из того, что я получил, вы можете импортировать функцию translate (contentKey: string, interpolate?: any, children?: string)
из react-jhipster
.
Попробуйте: import {translate} from 'react-jhipster'
Source: https://github.com/jhipster/react-jhipster/blob/master/src/language/translate.tsx
И вам не нужно всегда передавать его как реквизит, вы также можете использовать его в теле компонента.
Я знаю, что это старо, но у меня есть то, что я думал, было тем же вопросом, за исключением того, что ваш ответ не является решением для меня. Я уже импортирую компонент перевода из react-jhipster. Я хотел бы знать, можно ли использовать переведенную строку в качестве опоры в другом компоненте. Спасибо за любой совет.
Хорошо, я понял, как это сделать! Импортируйте компонент перевода: import { Translate as Trans, translate } from 'react-jhipster';
Затем вы можете использовать компонент Trans с contentKey
как обычно, но вы также можете использовать метод перевода для какого-либо другого компонента: <OpeningComponentTag className = "some-class" propToTranslate = {translate('path.to.json.translation.string')}>
Надеюсь, это поможет кому-то еще почесать голову :)
расскажите нам больше о вашем компоненте перевода - он из какой-нибудь библиотеки?