# General Translation React SDKs (gt-react, gt-next, gt-react-native): Использование серверных функций
URL: https://generaltranslation.com/ru/docs/react/tanstack-start/using-server-functions.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Как переводить строки и читать состояние запроса с помощью General Translation в серверных функциях TanStack Start.

Импортируйте изоморфные runtime-хелперы из `gt-tanstack-start`. В лоадерах, серверных функциях и метаданных, формируемых на сервере, вызывайте их в рамках активной области запроса.

## Перед началом [#before-start]

Выполните [настройку TanStack Start](/docs/react/tanstack-start/setup). Необходимо глобально зарегистрировать [`gtMiddleware`](/docs/react/tanstack-start/reference/functions/gt-middleware) и вызвать [`initializeGT`](/docs/react/reference/config#initialize) до того, как middleware начнет обрабатывать запрос.

Серверные вызовы этих вспомогательных функций выбрасывают исключение вне области активного запроса middleware.

## Перевод в серверной функции [#translate]

Создайте серверную функцию TanStack Start, затем вызовите [`getGT`](/docs/react/tanstack-start/reference/functions/get-gt) внутри её обработчика. Используйте [`getLocale`](/docs/react/tanstack-start/reference/functions/get-locale) и [`getEnableI18n`](/docs/react/tanstack-start/reference/functions/get-enable-i18n), если для ответа также требуется состояние запроса.

```tsx title="src/routes/account.tsx"
import { createFileRoute } from '@tanstack/react-router';
import { createServerFn } from '@tanstack/react-start';
import {
  getEnableI18n,
  getGT,
  getLocale,
} from 'gt-tanstack-start';

const loadAccount = createServerFn({ method: 'GET' }).handler(async () => {
  const gt = await getGT();

  return {
    locale: getLocale(),
    enableI18n: getEnableI18n(),
    title: gt('Account'),
  };
});

export const Route = createFileRoute('/account')({
  loader: () => loadAccount(),
  head: ({ loaderData }) => ({
    meta: [{ title: loaderData?.title }],
  }),
  component: Account,
});

function Account() {
  const data = Route.useLoaderData();
  return <h1>{data.title}</h1>;
}
```

TanStack Start выполняет обработчик в области middleware запроса. Каждый запрос получает собственную локаль и настройку интернационализации, в том числе при параллельном рендеринге на сервере.

## Перевод зарегистрированных сообщений и словарей [#messages]

Используйте [`getMessages`](/docs/react/tanstack-start/reference/functions/get-messages) для строк, зарегистрированных с помощью [`msg`](/docs/react/reference/functions/msg). Используйте [`getTranslations`](/docs/react/tanstack-start/reference/functions/get-translations) для записей словаря.

```ts
import { createServerFn } from '@tanstack/react-start';
import {
  getMessages,
  getTranslations,
  msg,
} from 'gt-tanstack-start';

const status = msg('Ready');

export const loadCopy = createServerFn({ method: 'GET' }).handler(async () => {
  const m = await getMessages();
  const t = await getTranslations('account');

  return {
    status: m(status),
    heading: t('heading'),
  };
});
```

## Sitemap

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