# gt-next: General Translation Next.js SDK: useGT
URL: https://generaltranslation.com/ru/docs/next/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/next/api/types/inline-translation-options) | Параметры перевода для настройки поведения `gt`. |
***
## Поведение
### Продакшен
В процессе CD любой контент внутри функции `gt` будет переведён до развертывания приложения.
Это обеспечивает быструю загрузку для всех локалей, но переводить можно только контент, известный на этапе сборки.
После генерации переводы либо (1) сохраняются в CDN, либо (2) включаются в выходные данные сборки приложения — в зависимости от вашей конфигурации.
После этого переведённый контент доставляется пользователям.
Если перевод не найден, будет использован исходный контент.
Обязательно следуйте [этому руководству по развертыванию](/docs/next/tutorials/quickdeploy).
### Разработка
Во время разработки функция `gt` будет переводить контент on-demand.
Это полезно, чтобы быстро проверить, как ваше приложение будет выглядеть на разных языках.
Не забудьте добавить Dev API key в переменные окружения, чтобы включить это поведение.
При on-demand переводе в режиме разработки будет заметна задержка.
В production-сборках этого не будет, если только контент явно не переводится on-demand.
***
## Пример
### Базовое использование
Вы можете использовать `useGT` для перевода строк.
```jsx copy
import { useGT } from 'gt-next';
export default function TranslateGreeting() {
const gt = useGT();
return {gt('Hello, Alice!')}
;
}
```
Примечание: "Alice" будет переведено на язык, предпочитаемый пользователем.
### Использование переменных [#variables]
Вы можете передавать переменные в переводы из словаря.
```jsx copy
import { useGT } from 'gt-next';
export default function TranslateGreeting() {
const gt = useGT();
return {gt('Hello, {name}!', { name: 'Alice' })}
;
}
```
Примечание: "Alice" не будет переведено на язык, предпочитаемый пользователем, поскольку это переменная.
### Использование формата сообщений ICU
`gt-next` поддерживает формат сообщений ICU, который также позволяет форматировать переменные.
```jsx copy
import { useGT } from 'gt-next';
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-next`
Если вы используете директиву `"use client"`, импортируйте из `gt-next`, а не из `gt-next`.
```jsx copy
'use client';
import { useGT } from 'gt-next';
export default function TranslateGreeting() {
const gt = useGT();
return {gt('Hello, Alice!')}
;
}
```
***
## Примечания
* `useGT` — это Hook для перевода строк.
* Перевод строк с помощью `useGT` выполняется до времени выполнения, на этапе сборки (кроме режима разработки).