# General Translation React SDKs (gt-react, gt-next, gt-react-native): Uso de funciones del servidor
URL: https://generaltranslation.com/es/docs/react/tanstack-start/using-server-functions.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Cómo traducir cadenas y leer el estado de la solicitud con General Translation en las funciones del servidor de TanStack Start.

Importa los helpers isomórficos de runtime desde `gt-tanstack-start`. En loaders, funciones del servidor y metadatos renderizados en el servidor, llámalos dentro del ámbito de la solicitud activa.

## Antes de empezar [#before-start]

Completa la [configuración de TanStack Start](/docs/react/tanstack-start/setup). Debes registrar [`gtMiddleware`](/docs/react/tanstack-start/reference/functions/gt-middleware) de forma global y llamar a [`initializeGT`](/docs/react/reference/config#initialize) antes de que el middleware procese una solicitud.

Las llamadas del servidor a estas funciones auxiliares lanzan una excepción fuera del ámbito de una solicitud activa del middleware.

## Traducir en una función del servidor [#translate]

Crea una función del servidor de TanStack Start y luego llama a [`getGT`](/docs/react/tanstack-start/reference/functions/get-gt) dentro de su manejador de solicitud. Usa [`getLocale`](/docs/react/tanstack-start/reference/functions/get-locale) y [`getEnableI18n`](/docs/react/tanstack-start/reference/functions/get-enable-i18n) cuando la respuesta también necesite el estado de la solicitud.

```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 ejecuta el manejador de solicitud dentro del ámbito del middleware de solicitudes. Cada solicitud recibe su propia configuración regional y configuración de internacionalización, incluso durante el renderizado concurrente en el servidor.

## Traducir mensajes registrados y diccionarios [#messages]

Usa [`getMessages`](/docs/react/tanstack-start/reference/functions/get-messages) para las cadenas registradas con [`msg`](/docs/react/reference/functions/msg). Usa [`getTranslations`](/docs/react/tanstack-start/reference/functions/get-translations) para las entradas del diccionario.

```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.
