# General Translation React SDKs (gt-react, gt-next): useGT URL: https://generaltranslation.com/ru/docs/react/reference/hooks/use-gt.mdx --- title: useGT description: Получите функцию для перевода строк inline с помощью General Translation gt-react. Справочник API по useGT. --- Хук `useGT` возвращает функцию, которая переводит строки в активную локаль. Используйте её для меток, плейсхолдеров и других отдельных строк, когда [``](/docs/react/reference/components/t) не подходит. *Доступно в `gt-react`, `gt-next`, `gt-tanstack-start` и `gt-react-native`. В примерах используется импорт из `gt-react`; вместо этого импортируйте из пакета вашего фреймворка.* ## Обзор [#overview] Вызовите `useGT`, чтобы получить функцию перевода, а затем передайте в неё строку. Эта функция возвращается напрямую. ```tsx const gt = useGT();

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

; ``` *Примечание: в `gt-react` вызывайте `useGT` внутри [``](/docs/react/reference/components/gt-provider). В `gt-next` это также работает в синхронных серверных компонентах. Пишите `const gt = useGT()` — хук возвращает функцию напрямую, а не объект.* ## Как это работает [#how-it-works] * **Перевод на этапе сборки.** В продакшене строки, переданные в `gt`, переводятся во время сборки, до развертывания. Перевести можно только контент, известный на этапе сборки. Если перевод отсутствует, используется исходная строка. * **По запросу в режиме разработки.** С API-ключом для разработки `gt` переводит по запросу, чтобы вы могли предварительно просматривать локали, с небольшой задержкой, которой нет в продакшене. * **Переменные не переводятся.** Интерполированные значения вставляются в переведённую строку, но сами никогда не переводятся. ## Параметры [#parameters] `useGT` не принимает параметров. ## Возвращает [#returns] **Тип** `(content: string, options?: InlineTranslationOptions) => string` Функция, которая переводит переданную строку в активную локаль. | Имя | Описание | Тип | Необязательно | | --------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------ | ------------- | | `content` | Строка, которую нужно перевести. | `string` | Нет | | `options` | Переменные интерполяции и параметры, такие как `$context`, `$id` и `$maxChars`. | [`InlineTranslationOptions`](/docs/react/reference/types/inline-translation-options) | Да | ## Примеры [#examples] ```tsx import { useGT } from 'gt-react'; export default function TranslateGreeting() { const gt = useGT(); return

{gt('Hello, Alice!')}

; } // "Hello, Alice!" переводится на локаль пользователя. ``` ```tsx import { useGT } from 'gt-react'; export default function TranslateGreeting() { const gt = useGT(); return

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

; } // "Alice" — это переменная, она не переводится. ``` ```tsx import { useGT } from 'gt-react'; export default function ItemCount() { const gt = useGT(); return (

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

); } ``` `gt-react` поддерживает [формат сообщений ICU](https://unicode-org.github.io/icu/userguide/format_parse/messages/) для форматирования переменных. ## Заметки [#notes] * `useGT` переводит строки; переводы выполняются на этапе сборки (или по запросу во время разработки). * В асинхронном компоненте App Router используйте вместо него [`getGT`](/docs/react/nextjs/reference/functions/get-gt). * Для поиска по словарю по id используйте [`useTranslations`](/docs/react/reference/hooks/use-translations); чтобы регистрировать строки на уровне модуля, используйте [`msg`](/docs/react/reference/functions/msg) вместе с [`useMessages`](/docs/react/reference/hooks/use-messages).