Как вы переходите от устаревшего <I18n> в реагировать-18следующий?

Я обновил react-i18next до последней версии, и я вижу, что <I18n> HOC ушел.

Прежде чем вы могли иметь что-то подобное

public render() {
        return (
            <I18n>{(t) => (
            <div>
                <p>{t("translation_key_here")}</p>
            )}</I18n>
        );
    }

Теперь он говорит, что модуль не имеет экспортированного члена i18n.

Я прочитал документацию, но не смог найти четкого способа достижения того же результата. я пробовал withNamespace но это не решает мою проблему.

У меня также есть функции внутри моих компонентов, которые визуализируют JSX.Elements, поэтому передача withNamespaces там невозможно, и {t} не передается им.

Есть ли компонент или функция, аналогичная была <I18n></I18n> делать?

1 ответ

В react-i18next v9 это <NamespacesConsumer> и v10 это <Translation>

Другие вопросы по тегам