Config

loadDictionary

Справочная информация по API функции loadDictionary().

Обзор

loadDictionary загружает JSON‑файл переводов для указанной локали.

Эта функция предназначена для тех, кто хочет использовать gt-next как автономную библиотеку i18n.

В первую очередь она применяется для миграции существующих проектов с i18n на General Translation с сохранением имеющихся переводов. Следуйте этому руководству, чтобы настроить всё.

Если доступно несколько наборов переводов, переводы из словарей, загруженных через loadDictionary, всегда имеют приоритет над другими. loadDictionary поддерживает только JSON‑файлы со строковыми переводами.

Справка

Параметры

Prop

Type

Описание

ТипОписание
localeЛокаль, для которой нужно загрузить переводы.

Возвращает

Promise<any>, который разрешается в словарь с отображением идентификаторов на переводы для указанной локали.


Настройка

Обычно словарь загружают из каталога ./public/locales.

Определите функцию loadDictionary как экспорт по умолчанию в файле loadDictionary.js или loadDictionary.ts — либо в каталоге src/, либо в корне. Убедитесь, что функция возвращает промис, который разрешается в объект с переводами для указанной локали.

src/loadDictionary.js
export default async function loadDictionary(locale) {
  const translations = await import(`../public/locales/${locale}.json`);
  return translations.default;
}

Вопрос: В чём разница между loadTranslations и loadDictionary?

  • loadTranslations используется для определения кастомной логики загрузки переводов для вашего приложения. Это может быть получение переводов из CDN, базы данных или бандла приложения. Обычно это машинно сгенерированные переводы, управляемые CLI‑инструментом, и их неудобно редактировать вручную.
  • loadDictionary предназначен для случаев, когда gt-next используется как автономная библиотека. Пользователи предоставляют собственные переводы, и инфраструктура переводов не задействуется.

Примечания

  • loadDictionary используется для загрузки пользовательских переводов в ваше приложение.
  • Словари, загруженные с помощью loadDictionary, имеют приоритет над переводами, загруженными с помощью loadTranslations.

Следующие шаги

  • Если вы хотите писать собственные переводы, ознакомьтесь с разделом custom translations.
  • См. loadTranslations для получения подробной информации о создании пользовательского загрузчика переводов.

Насколько полезно это руководство?

loadDictionary