Хук useTranslation () не читает импортированные пространства имен - i18next - PullRequest
1 голос
/ 22 апреля 2020

Я импортирую jsons с переводами в свой проект React, чтобы я мог организовать свой код. Но хук useTranslation (), похоже, не читает эти импортированные пространства имен.

Пример того, как я это делаю:

i18n. js:

import i18next from 'i18next';
import {
  file1, 
  file2
} from 'translations';

i18next.init({
  interpolation: {
    escapeValue: false
  },
  lng: 'en',
  resources: {
    en: {
      file1: file1,
      file2: file 2
}
export default i18next;

Использование useTanslator ():

import React from 'react';
import { useTranslation } from 'react-i18next';

export function MyComponent() {
  const { t } = useTranslation();

  return
   <p>{t('file1:text')}</p>
   <p>{t('file2:file2.text')}</p>
}

Показывает:

текст

file2.text

Редактировать: я должен был добавить такие пространства имен, как useTranslation ("file1"), но все равно не работает.

1 Ответ

0 голосов
/ 22 апреля 2020

Вам не хватает пространства имен, когда вы вызываете хук. Должно быть:

useTranslation(["file1", "file2"])
...