# General Translation React SDKs (gt-react, gt-next): loadDictionary URL: https://generaltranslation.com/ru/docs/react/reference/functions/load-dictionary.mdx --- title: loadDictionary description: Загружайте собственный словарь переводов как автономную библиотеку i18n с General Translation gt-react. Справочник по API для loadDictionary. --- `loadDictionary` — это функция-загрузчик, которую вы определяете для загрузки словаря переводов для локали. Она предназначена для использования `gt-react` как автономной библиотеки i18n — чтобы подключать собственные переводы, обычно при миграции существующего i18n-проекта на General Translation. *Применяется к `gt-react`, `gt-next`, `gt-tanstack-start` и `gt-react-native`, но способ подключения различается. `loadDictionary` — это загрузчик, который вы определяете, а не экспортируемый символ. В `gt-react` и `gt-tanstack-start` передайте его в вызов инициализации (ниже); в `gt-next` он определяется через плагин `withGTConfig` (описан в разделе Next.js). Контракт загрузчика на этой странице везде одинаковый.* ## Обзор [#overview] Определите функцию, которая принимает локаль и возвращает соответствующий словарь, а затем передайте её в опции `loadDictionary` для [`initializeGT`](/docs/react/reference/config#initialize). В одностраничных приложениях вместо этого передайте её в [`initializeGTSPA`](/docs/react/reference/config#initialize-spa). ```tsx const loadDictionary = (locale: string) => import(`../public/locales/${locale}.json`).then((m) => m.default); initializeGT({ ...gtConfig, loadDictionary }); ``` *Примечание: в `gt-react` `loadDictionary` — это параметр конфигурации в вызове инициализации, а не проп у [``](/docs/react/reference/components/gt-provider). `loadDictionary` поддерживает только JSON-файлы со строковыми переводами.* ## Как это работает [#how-it-works] * **Автономные переводы.** `loadDictionary` загружает JSON-файл с переводами для указанной локали. Используйте его, если вы подключаете собственные переводы и не используете инфраструктуру переводов General Translation. * **Приоритет.** Если доступно несколько переводов, словари, загруженные через `loadDictionary`, всегда имеют приоритет над переводами, загруженными через [`loadTranslations`](/docs/react/reference/functions/load-translations). * **Только JSON.** Поддерживаются только JSON-файлы, содержащие строковые переводы. *Разница между двумя загрузчиками: [`loadTranslations`](/docs/react/reference/functions/load-translations) позволяет настроить загрузку машинно-сгенерированных переводов, которыми управляет CLI (из CDN, базы данных или бандла), а `loadDictionary` предназначен для использования `gt-react` как автономной библиотеки с собственными переводами, без какой-либо инфраструктуры переводов.* ## Параметры [#parameters] | Параметр | Описание | Тип | Необязательно | По умолчанию | | ------------------- | ----------------------------------------- | -------- | ------------- | ------------ | | [`locale`](#locale) | Локаль, для которой загружаются переводы. | `string` | Нет | — | ### `locale` [#locale] **Тип** `string` · **Обязательно** Локаль, для которой нужно загрузить словарь. ## Возвращает [#returns] **Тип** `Promise` Промис, который разрешается в сопоставление `Dictionary`, связывающее id с переводами для указанной локали. ## Примеры [#examples] ```js title="loadDictionary.js" export default async function loadDictionary(locale) { const translations = await import(`../public/locales/${locale}.json`); return translations.default; } ``` ## Заметки [#notes] * `loadDictionary` загружает ваши собственные переводы для автономного использования и имеет приоритет над [`loadTranslations`](/docs/react/reference/functions/load-translations). * Поддерживаются только JSON-файлы со строковыми переводами. * Обращайтесь к элементам словаря во время выполнения с помощью [`useTranslations`](/docs/react/reference/hooks/use-translations).