Доступ к переводам next-i18next вне страницы / компонента

Я создаю приложение Next.JS с помощью Typescript и хотел бы получить доступ к переводам next-i18next вне страницы / компонента, чтобы локализовать сообщения проверки, в то время как весь механизм проверки определен в отдельном служебном классе. Проверили next-i18next на предмет каких-либо статических аксессоров, но там не повезло. Какие-либо предложения?


person saniokazzz    schedule 08.03.2021    source источник


Ответы (1)


Я думал, что единственный способ - передать i18n в качестве параметра вашему служебному классу.

import { withTranslation, WithTranslation } from 'i18n';
import { checkFunction } from '../utils';

type Props = WithTranslation;

const Page: React.FC<Props> = (props) => {
  const result = checkFunction(props.i18n);
}

export default withTranslation(['common'])(Page);
person bcjohn    schedule 08.03.2021
comment
Спасибо, я понимаю, что можно использовать withTranslation, но я хотел бы иметь более надежное решение, так как в этом случае легко забыть включить одно из пространств имен перевода, если их мало. Я бы хотел найти решение без передачи функции перевода. - person saniokazzz; 09.03.2021