# General Translation Changelog: gt-react 10.15.0: derive() в тегированных шаблонных литералах
URL: https://generaltranslation.com/ru/blog/gt-react_v10_15_0.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: 
Authors: Ernest McCarter
Published: 2026-03-18

import Video from '@/components/Video';

## Переименование `declareStatic()` в `derive()`

Это первый релиз, в котором используется новое название [`derive()`](/docs/react/reference/functions/derive). Ранее эта функция называлась `declareStatic()`, а JSX-компонент — `<Static>`. В [PR #1062](https://github.com/generaltranslation/gt/pull/1062) для ясности их переименовали в [`derive()`](/docs/react/reference/functions/derive) и [`<Derive>`](/docs/react/reference/components/derive).

<Video src="https://assets.gtx.dev/derive-animation.mp4" />

## Обзор

В этом релизе продолжено [избавление `gt-react` от контекста React](/devlog/gt-react_v10_12_0) и развитие [макроса тегированного шаблонного литерала `t`](/devlog/gt-react_v10_13_0). [`derive()`](/docs/react/reference/functions/derive) теперь работает внутри тегированного шаблонного литерала [`t`](/docs/react/reference/functions/t-function). Ранее [`derive()`](/docs/react/reference/functions/derive) можно было использовать только внутри вызовов функции [`t()`](/docs/react/reference/functions/t-function):

```jsx
t("The {subject} is playing.", { subject: derive(getSubject(gender)) })
```

Теперь это можно писать прямо в шаблонном литерале:

```jsx
t`The ${derive(getSubject(gender))} is playing.`
```

## Как это работает

[`derive()`](/docs/react/reference/functions/derive) указывает CLI-инструменту проанализировать все возможные значения, которые может возвращать функция, и создать отдельную запись перевода для каждого из них. Это позволяет сохранить грамматическое согласование в разных языках — например, в испанском для фраз «The boy is playing» и «The girl is playing» нужны разные артикли (*El niño* и *La niña*).

## Пример

```jsx
import { t } from "gt-react/browser";
import { derive } from "gt-react";

function getSubject(gender) {
  return gender === "male" ? "boy" : "girl";
}

function Component({ gender }) {
  return <p>{t`The ${derive(getSubject(gender))} is playing.`}</p>;
}
```

Это создаст две записи перевода:

* &quot;Мальчик играет.&quot;
* &quot;Девочка играет.&quot;


## Ссылки

* [Предыдущий журнал разработки: тегированный шаблонный литерал `t` (gt-react@10.13.0)](/devlog/gt-react_v10_13_0)
* [Справочник по API `derive()`](/docs/react/reference/functions/derive)
* [PR #1129](https://github.com/generaltranslation/gt/pull/1129)

## Sitemap

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