# General Translation React SDKs (gt-react, gt-next): Обработка множественных форм и условий URL: https://generaltranslation.com/ru/docs/react/guides/handling-plurals-and-branches.mdx --- title: Обработка множественных форм и условий description: Как отображать контент, зависящий от количества и условий, с помощью компонентов и от General Translation в React, Next.js, TanStack Start и React Native. related: links: - /docs/react/guides/formatting-variables - /docs/react/guides/translating-jsx - /docs/react/guides/translating-strings - /docs/react/guides/translating-with-dictionaries --- Текст, который меняется в зависимости от количества или условия, не может быть одной статической строкой, потому что в других языках множественные формы и варианты выражаются по-разному. Используйте [``](/docs/react/reference/components/plural) для количественных значений, а [``](/docs/react/reference/components/branch) — для других условий, чтобы каждый вариант переводился правильно. Оба компонента работают одинаково во всех фреймворках; отличается только пакет импорта. ## Склонение по числу с `` [#plural] Передайте количество в `n` и укажите дочерний элемент для каждой формы множественного числа. General Translation выбирает правильную форму для активной локали на основе правил множественного числа этой локали. ```tsx import { T, Plural, Num } from 'gt-react'; You have {count} message.} other={<>You have {count} messages.} /> ; ``` ```tsx import { T, Plural, Num } from 'gt-next'; You have {count} message.} other={<>You have {count} messages.} /> ; ``` ```tsx import { T, Plural, Num } from 'gt-tanstack-start'; You have {count} message.} other={<>You have {count} messages.} /> ; ``` ```tsx import { T, Plural, Num } from 'gt-react-native'; You have {count} message.} other={You have {count} messages.} /> ; ``` Укажите категории множественного числа, которые используются в вашем исходном языке (обычно `one` и `other`); для каждого целевого языка переводчики добавят нужные категории, например `zero`, `two`, `few` и `many`. ## Ветвление по значению с помощью `` [#branch] Используйте ``, чтобы выбирать содержимое на основе произвольного значения. Передайте значение в `branch` и укажите дочерний prop для каждого возможного значения, а `children` используйте как резервный вариант. Импортируйте `Branch` из того же пакета, что и [``](/docs/react/reference/components/t). ```tsx Upgrade to unlock more.

} pro={

Thanks for going Pro!

} >

Welcome.

; ``` Каждый дочерний элемент `` переводится отдельно, поэтому каждый вариант звучит естественно на любом языке. *Примечание: компонент `` игнорирует любые атрибуты `data-*`. Правило линтера [`no-data-attrs-on-branch`](/docs/react/reference/lint-rules) помечает их.* ## Next steps - /docs/react/guides/formatting-variables - /docs/react/guides/translating-jsx - /docs/react/guides/translating-strings - /docs/react/guides/translating-with-dictionaries