# react-native: useGT URL: https://generaltranslation.com/ru/docs/react-native/api/strings/use-gt.mdx --- title: useGT description: Справка по API для функции useGT для перевода строк --- {/* СГЕНЕРИРОВАНО АВТОМАТИЧЕСКИ: не редактируйте напрямую. Вместо этого изменяйте template в content/docs-templates/. */} ## Обзор `useGT` — Hook для перевода строк на этапе сборки. ```jsx const gt = useGT();

{gt('This text will be translated')}

; ``` **Перевод на этапе сборки:** переводы через `useGT` выполняются на этапе сборки, до развертывания приложения. Хотя в переводимую строку можно передавать переменные, переводить можно только содержимое, известное на этапе сборки. ## Справка ### Параметры Отсутствуют ### Возвращает Функцию обратного вызова `gt`, которая переводит переданный контент. ```jsx (content: string, options?: InlineTranslationOptions) => string ``` | Название | Тип | Описание | | ---------- | ------------------------------------------------------------------------------------- | --------------------------------------------- | | `content` | `string` | Строковое содержимое для перевода. | | `options?` | [`InlineTranslationOptions`](/docs/react-native/api/types/inline-translation-options) | Параметры перевода для настройки работы `gt`. | *** ## Поведение ### Продакшен В процессе CD всё содержимое внутри функции `gt` переводится до развертывания приложения. Это обеспечивает быструю загрузку для всех локалей, но позволяет переводить только контент, известный на этапе сборки. После генерации переводы либо (1) сохраняются в CDN, либо (2) попадают в артефакты сборки приложения — в зависимости от вашей конфигурации. Затем переведенный контент доставляется пользователям. Если перевод не найден, используется исходный контент. Обязательно воспользуйтесь [этим руководством по развертыванию](/docs/react-native/tutorials/quickdeploy). ### Разработка Во время разработки функция `gt` будет переводить содержимое on-demand. Это полезно для прототипирования того, как ваше приложение будет выглядеть на разных языках. Не забудьте добавить Dev API key в переменные окружения, чтобы включить это поведение. При on-demand переводе в процессе разработки будет возникать задержка. В production-сборках этого не будет, если только содержимое явно не переводится on-demand. *** ## Пример ### Базовое использование Вы можете использовать `useGT` для перевода строк. ```jsx copy import { useGT } from 'gt-react-native'; export default function TranslateGreeting() { const gt = useGT(); return

{gt('Hello, Alice!')}

; } ``` Примечание: "Alice" будет переведено на язык, выбранный пользователем. ### Использование переменных [#variables] Вы можете передавать переменные в переводы из словаря. ```jsx copy import { useGT } from 'gt-react-native'; export default function TranslateGreeting() { const gt = useGT(); return

{gt('Hello, {name}!', { name: 'Alice' })}

; } ``` Примечание: "Alice" не будет переведено на язык, выбранный пользователем, поскольку это переменная. ### Использование формата сообщений ICU `gt-react-native` поддерживает формат сообщений ICU, который также позволяет форматировать значения переменных. ```jsx copy import { useGT } from 'gt-react-native'; export default function TranslateGreeting() { const gt = useGT(); return (

{gt( 'There are {count, plural, =0 {no items} =1 {one item} other {{count} items}} in the cart', { count: 10 } )}

); } ``` Формат сообщений ICU — мощный инструмент для форматирования переменных. Более подробную информацию см. в [документации по формату сообщений ICU](https://unicode-org.github.io/icu/userguide/format_parse/messages/). ### Импорт из `gt-react-native` Если вы используете директиву `"use client"`, импортируйте из `gt-react-native`, а не из `gt-react-native`. ```jsx copy 'use client'; import { useGT } from 'gt-react-native'; export default function TranslateGreeting() { const gt = useGT(); return

{gt('Hello, Alice!')}

; } ``` *** ## Примечания * `useGT` — это Hook для перевода строк. * Перевод строк с помощью `useGT` выполняется до времени выполнения, на этапе сборки (кроме режима разработки).