# gt: General Translation CLI tool: Использование автоматической инъекции JSX URL: https://generaltranslation.com/ru/docs/cli/guides/using-auto-jsx.mdx --- title: Использование автоматической инъекции JSX description: Как оборачивать переводимый JSX-текст в компоненты General Translation на этапе сборки с помощью автоматической инъекции JSX. related: links: - /docs/cli/guides/using-autoderive - /docs/cli/guides/generating-translations - /docs/cli/guides/configuring - /docs/cli/guides/managing-translations --- Автоматическая инъекция JSX позволяет компилятору оборачивать переводимый JSX-текст в компоненты [``](/docs/react/reference/components/t) на этапе сборки, поэтому вам не нужно добавлять их вручную. По умолчанию автоматическая инъекция JSX отключена. Она работает в одностраничных приложениях React (SPA) и в webpack-сборках Next.js. ## Включить автоматическую инъекцию JSX [#enable] Установите компилятор: ```bash npm install @generaltranslation/compiler ``` ```bash yarn add @generaltranslation/compiler ``` ```bash bun add @generaltranslation/compiler ``` ```bash pnpm add @generaltranslation/compiler ``` Укажите `enableAutoJsxInjection` в `files.gt.parsingFlags` файла `gt.config.json`. Это сохраняет синхронизацию между извлечением через CLI и преобразованиями компилятора. ```json title="gt.config.json" { "files": { "gt": { "parsingFlags": { "enableAutoJsxInjection": true } } } } ``` ## Настройте сборку [#configure-build] Флаг в `gt.config.json` применяется при запуске компилятора General Translation. ### React SPA Добавьте `@generaltranslation/compiler` в конфигурацию Vite, webpack, Rollup, Rspack или esbuild. Примеры адаптеров см. в разделе [Разработка с переводом для SPA](/docs/react/guides/developing-spa-translations#setup). ### Next.js Настройте `gt-next` для использования webpack-компилятора на базе Babel: ```ts title="next.config.ts" import { withGTConfig } from 'gt-next/config'; const nextConfig = {}; export default withGTConfig(nextConfig, { experimentalCompilerOptions: { type: 'babel', enableAutoJsxInjection: true, }, }); ``` Запустите и сервер разработки, и production-сборку с помощью webpack: ```json title="package.json" { "scripts": { "dev": "next dev --webpack", "build": "next build --webpack" } } ``` В Next.js 16 по умолчанию используется Turbopack. Turbopack отключает компилятор Babel, предупреждает, что автоматическая инъекция будет пропущена, и не оборачивает JSX. См. [параметры компилятора Next.js](/docs/react/nextjs/config#compiler-options). ## Как это работает [#how] Если не использовать инъекцию, вам нужно самим оборачивать текст для перевода. ```jsx import { T } from 'gt-react'; function Welcome() { return (

Welcome to our app

); } ``` В проектах Next.js вместо этого импортируется [``](/docs/react/reference/components/t) из `gt-next`. Когда инъекция включена, компилятор обнаруживает переводимый текст и автоматически оборачивает его на этапе сборки. ```jsx function Welcome() { return

Welcome to our app

; } ``` Текст, который вы уже обернули в [``](/docs/react/reference/components/t), вместе с другими компонентами General Translation, такими как [``](/docs/react/reference/components/var), [``](/docs/react/reference/components/branch), [``](/docs/react/reference/components/plural) и [``](/docs/react/reference/components/derive), остаётся без изменений. ## Next steps - /docs/cli/guides/using-autoderive - /docs/cli/guides/generating-translations - /docs/cli/guides/configuring - /docs/cli/guides/managing-translations