# General Translation React SDKs (gt-react, gt-next, gt-react-native): loadTranslations
URL: https://generaltranslation.com/ru/docs/react/reference/functions/load-translations.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Настройте, как переводы загружаются в продакшене. Справочник API для loadTranslations.

`loadTranslations` — это функция-загрузчик, которую вы определяете, чтобы настроить, откуда `gt-react` читает переводы в продакшене. Передайте её в [вызов инициализации](/docs/react/reference/config#initialization), чтобы загружать переводы из источника, отличного от CDN General Translation по умолчанию.

*Применяется к `gt-react`, `gt-next`, `gt-tanstack-start` и `gt-react-native`, но способ подключения различается. `loadTranslations` — это загрузчик, который вы определяете, а не экспортируемый символ. В `gt-react` и `gt-tanstack-start` передайте его в вызов инициализации (ниже). `gt-next` получает его через плагин `withGTConfig` (описан в разделе Next.js), а `gt-react-native` загружает переводы через настройку своего провайдера. Контракт загрузчика на этой странице везде одинаковый.*

## Обзор [#overview]

Определите функцию, которая принимает локаль и возвращает её переводы, а затем передайте её в качестве опции `loadTranslations` в [`initializeGT`](/docs/react/reference/config#initialize). В одностраничных приложениях вместо этого передайте её в [`initializeGTSPA`](/docs/react/reference/config#initialize-spa).

```tsx
const loadTranslations = (locale: string) =>
  import(`./_gt/${locale}.json`).then((m) => m.default);

initializeGT({ ...gtConfig, loadTranslations });
```

*Примечание: в `gt-react` `loadTranslations` — это параметр конфигурации при вызове инициализации, а не prop компонента [`<GTProvider>`](/docs/react/reference/components/gt-provider). По умолчанию переводы загружаются из CDN General Translation.*

## Как это работает [#how-it-works]

В продакшене ваши переводы должны храниться там, откуда их можно читать во время выполнения. По умолчанию они загружаются из CDN General Translation. Передайте `loadTranslations`, чтобы загружать их из другого источника, например:

* Бандл вашего приложения (самый распространённый вариант).
* База данных.
* API.
* Другая CDN.

`gt-react` поддерживает загрузку переводов из локальных файлов в вашем бандле. См. [Хранение переводов локально](/docs/react/guides/storing-translations).

## Параметры [#parameters]

| Параметр            | Описание                                  | Тип      | Необязательный | По умолчанию |
| ------------------- | ----------------------------------------- | -------- | -------------- | ------------ |
| [`locale`](#locale) | Локаль, для которой загружаются переводы. | `string` | Нет            | —            |

### `locale` [#locale]

**Тип** `string` · **Обязательно**

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

## Возвращает [#returns]

**Тип** `Promise<unknown>`

Промис, который по завершении возвращает переводы для указанной локали.

## Примеры [#examples]

```js title="loadTranslations.js"
export default async function loadTranslations(locale) {
  const translations = await import(`./_gt/${locale}.json`);
  return translations.default;
}
```

```js title="loadTranslations.js"
export default async function loadTranslations(locale) {
  try {
    const response = await fetch(`https://your-cdn.com/translations/${locale}.json`);
    return await response.json();
  } catch (e) {
    console.error(e);
    return {};
  }
}
```

## Заметки [#notes]

* `loadTranslations` настраивает загрузку переводов в продакшене; чаще всего он используется для [локальных переводов](/docs/react/guides/storing-translations).
* Если вы хотите использовать собственные переводы, созданные людьми, как отдельную i18n-библиотеку, вместо этого используйте [`loadDictionary`](/docs/react/reference/functions/load-dictionary).

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
