# gt-next: General Translation Next.js SDK: tx URL: https://generaltranslation.com/ru/docs/next/api/strings/tx.mdx --- title: tx description: Справочник API по функции tx для перевода строк --- ## Обзор Функция `tx` выполняется на стороне сервера и предназначена для перевода строк. ```jsx await tx('Hello, world!'); // возвращает 'Hola, mundo!' ``` **Перевод во время выполнения:** Переводы `tx` выполняются во время выполнения. Это означает, что перевод выполняется на лету, поэтому вы можете переводить контент, доступный только во время выполнения. ## Справочник ### Параметры | Имя | Описание | | --------- | ------------------------------------------------------------------------------------------------------------------------------------- | | `content` | Строка, которую нужно перевести. | | `options` | Параметры перевода для настройки поведения `tx`. См. [`RuntimeTranslationOptions`](/docs/next/api/types/runtime-translation-options). | ### Возвращает Промис, который после выполнения возвращает строку с переведённым содержимым или исходное содержимое, если перевод не требуется. *** ## Поведение Функция `tx` переводит строки во время выполнения. Это означает, что переводы выполняются на лету, поэтому вы можете переводить содержимое, которое становится известным только во время выполнения. Обратная сторона в том, что приходится ждать загрузки перевода по запросу, а это значительно медленнее. Мы рекомендуем переводить всё, что можно, на этапе сборки с помощью [`getGT`](/docs/next/api/strings/use-gt), [`useGT`](/docs/next/api/strings/use-gt) или [``](/docs/next/api/components/t), а переводы по запросу, такие как `tx` и [``](/docs/next/api/components/tx), использовать только при необходимости. Обязательно следуйте [этому руководству по развертыванию](/docs/next/tutorials/quickdeploy). *** ## Пример ### Базовое использование Вы можете использовать `tx` для перевода строк. ```javascript title="src/components/translateGreeting.jsx" copy import { tx } from 'gt-next/server'; export default async function translateGreeting() { return await tx("Hello, world!"); // [!code highlight] } ``` ### Добавление контекста Вы можете настроить перевод, указав контекст, который будет учитываться при переводе. ```javascript title="TranslateWithOptions.jsx" copy import { tx } from 'gt-next/server'; export default async function TranslateWithOptions() { return await tx("Hello, world!", { $context: 'Translate informally' // [!code highlight] }); } ``` ### Использование переменных Чтобы передать значения в строку, нужно (1) задать идентификатор и (2) сослаться на него в передаваемом объекте. ```jsx title="translateWithVariables.js" copy // [!code word:price] import { tx } from 'gt-next/server'; export default async function translateWithVariables() { return await tx("The cost is {price, number, ::currency/USD}", { price: 29.99, }); } ``` ### Указание локали Вы можете указать локаль, которая будет использоваться для перевода. По умолчанию используется предпочитаемый пользователем язык. ```jsx title="translateWithLocale.js" copy import { tx } from 'gt-next/server'; export default async function translateWithLocale() { return await tx("Hello, world!", { $locale: 'fr' }); // [!code highlight] } ``` *** ## Примечания * `tx` предназначен исключительно для использования на стороне сервера и не может применяться в клиентских компонентах. * Переводы с `tx` выполняются во время выполнения, то есть «на лету». Это значительно медленнее, чем переводы на этапе сборки. ## Следующие шаги * См. [`useGT`](/docs/next/api/strings/use-gt) и [`getGT`](/docs/next/api/strings/get-gt), чтобы переводить строки перед развертыванием. * Для перевода JSX см. [``](/docs/next/api/components/t) и [``](/docs/next/api/components/tx). * Дополнительные сведения о настройке переводов см. в [`RuntimeTranslationOptions`](/docs/next/api/types/runtime-translation-options).