# Vue: GTFunction
URL: https://generaltranslation.com/ru/docs/vue/reference/types/gt-function.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Описание синхронной функции обратного вызова, используемой для поиска в каталоге простых строк Vue. Справочник API для GTFunction.

Функция обратного вызова, возвращаемая [`useGT()`](/docs/vue/reference/composables/use-gt), и экспорт [`t()`](/docs/vue/reference/functions/t) на уровне модуля имеют одинаковую сигнатуру. Их владение состоянием и доступность различаются, но результат поиска одинаков.

## Обзор [#overview]

```ts
type GTFunction = (
  message: string,
  options?: GTStringOptions
) => string;
```

| Параметр              | Описание                                                            | Тип                                                              | Необязательный | По умолчанию |
| --------------------- | ------------------------------------------------------------------- | ---------------------------------------------------------------- | -------------- | ------------ |
| [`message`](#message) | Исходная строка для перевода.                                       | `string`                                                         | Нет            | —            |
| [`options`](#options) | Необязательный контекст, используемый при вычислении хеша каталога. | [`GTStringOptions`](/docs/vue/reference/types/gt-string-options) | Да             | `{}`         |

## Параметры [#parameters]

### `message`

**Тип** `string` · **Обязательно**

Буквальный исходный текст, используемый для вычисления простого хеша `STRING`. Фигурные скобки остаются частью этого текста и не являются заполнителями для интерполяции.

### `options`

**Тип** [`GTStringOptions`](/docs/vue/reference/types/gt-string-options) · **Необязательный** · **По умолчанию** `{}`

Поддерживается только `$context`. Он позволяет различать одинаковые исходные строки.

## Возвращаемое значение [#returns]

**Тип** `string`

Возвращает строковое значение активного каталога для вычисленного хеша. Если запись отсутствует или значение в каталоге не является строкой, возвращает `message` без изменений.

Поиск выполняется синхронно и не выполняет сетевых операций, обработки ICU или интерполяции.

## Реализации [#implementations]

| API                                                 | Источник состояния                                                                                             | Обновление локали                                                                                                                                                            |
| --------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [`useGT()`](/docs/vue/reference/composables/use-gt) | [`GTPlugin`](/docs/vue/reference/types/gt-plugin), установленный в текущем Vue-приложении.                     | Вызывайте функцию обратного вызова из шаблона, вычисляемого значения или реактивного эффекта, чтобы повторно выполнить его после изменения локали или загрузки каталога реактивным плагином. |
| [`t()`](/docs/vue/reference/functions/t)            | Глобальный Runtime браузера, созданный [`initializeGTSPA()`](/docs/vue/reference/functions/initialize-gt-spa). | Результаты, определённые на уровне модуля, обновляются только после перезагрузки страницы средством установки локали SPA и повторного вычисления модулей.                    |

Вызов [`useGT()`](/docs/vue/reference/composables/use-gt) без установленного плагина выбрасывает исключение, когда composable пытается получить доступ к состоянию. Вызов [`t()`](/docs/vue/reference/functions/t) на сервере или до завершения инициализации SPA также выбрасывает исключение.

## Пример [#example]

```ts
import type { GTFunction } from 'gt-vue';

function translateNavigation(gt: GTFunction) {
  return {
    home: gt('Home'),
    settings: gt('Settings'),
  };
}
```

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
