# gt-next: General Translation Next.js SDK: RuntimeTranslationOptions
URL: https://generaltranslation.com/ru/docs/next/api/types/runtime-translation-options.mdx
---
title: RuntimeTranslationOptions
description: Справочная документация API для типа RuntimeTranslationOptions
---
## Обзор
Тип `RuntimeTranslationOptions` используется для передачи переменных во встроенные переводы и указания того, как они будут отрисовываться.
Вы также можете добавить локаль, чтобы указать другой язык перевода.
Этот тип используется с функцией [`tx`](/docs/next/api/strings/tx).
**Перевод во время выполнения:**
Чтобы перевести переменную при необходимости, включите её прямо в строку, передаваемую в [`tx`](/docs/next/api/strings/tx).
Переменные, переданные в `tx` через объект `options`, не переводятся.
## Справочник
### Параметры
### Описание
| Prop | Описание |
| ------------ | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `[variable]` | Переменные передаются как ключи верхнего уровня в объекте options. Имена ключей соответствуют заполнителям в строке (например, `{username}`). |
| `$locale` | Укажите локаль для перевода. По умолчанию используется наиболее предпочтительная локаль браузера из тех, что поддерживаются вашим приложением. |
| `$maxChars` | Ограничивает количество символов в переводе. Библиотека строго соблюдает это ограничение. |
***
## Примеры
### Передача переменных
Чтобы добавить переменную в строку, используйте синтаксис `{variable-name}`, где имя переменной заключается в фигурные скобки.
```jsx title="Component.tsx"
// [!code word:username]
import { tx } from 'gt-next/server';
const Component = () => {
return
{tx(`Hello, {username}!`,{ username: 'Brian123' })}
;
};
```
### Использование формата сообщений ICU
`gt-next` поддерживает формат сообщений ICU, который также позволяет форматировать переменные.
```jsx title="Component.tsx"
// [!code word:account-balance]
import { tx } from 'gt-next/server';
const Component = () => {
return
{ tx(
'Your account balance: {dollars, number, ::currency/USD}!',
{
"dollars" : 1000000,
}
) }
;
};
```
### Перевод переменных
Чтобы перевести переменную, включите её прямо в строку, передаваемую в `tx`.
```jsx title="Component.tsx"
import { tx } from 'gt-next/server';
const Component = ({ hairColor }: { hairColor: string }) => {
return {tx(
`Hello, {username}! Your haircolor is ${hairColor}`,
{ username: 'Brian123' }
)}
;
};
```
Обратите внимание: значение переменной `hairColor` переводится, а `username` — нет.
### Указание локали
Вы можете указать локаль, которая будет использоваться для перевода.
```jsx title="Component.tsx"
import { tx } from 'gt-next/server';
const Component = () => {
return {tx('Hello, world!', { $locale: 'fr' })}
;
};
```
Это всегда будет переводиться на французский язык.
### Ограничения по числу символов
Используйте `$maxChars`, чтобы ограничить длину перевода:
```jsx title="Component.tsx"
// [!code word:$maxChars]
import { tx } from 'gt-next/server';
const Component = () => {
return {tx('Welcome to our application', { $maxChars: 15 })}
;
// Output: "Bienvenue à no\u202F…"
};
```
***
## Примечания
* `RuntimeTranslationOptions` используется для перевода строк во время выполнения.
* Переменные передаются как ключи верхнего уровня в объекте options, а не вкладываются в ключ `variables`.
## Дальнейшие шаги
* См. [`tx`](/docs/next/api/strings/tx), чтобы подробнее узнать о встроенном переводе строк.
* См. [`формат сообщений ICU`](https://unicode-org.github.io/icu/userguide/format_parse/messages/), чтобы подробнее узнать о вариантах форматирования.