@generaltranslation/react-core-linter@0.1.0
Обзор
@generaltranslation/react-core-linter 0.1.0 добавляет правила ESLint для интеграции React Core от General Translation.
Этот плагин обнаруживает распространённые ошибки реализации, которые мы встречали на практике.
Установка
npm install @generaltranslation/react-core-linter --save-devВ этот первый релиз входят два правила:
static-jsx- Контролирует корректное оборачивание переменных в компонентах<T>static-string- Контролирует, чтобы в функциях перевода использовались статические строки
Статическая проверка JSX
Правило static-jsx не допускает размещения динамического контента непосредственно внутри компонентов <T>.
Динамический контент нужно оборачивать в компоненты‑переменные.
// ❌ Wrong
<T>Hello {userName}!</T>
// ✅ Правильно
<T>Hello <Var>{userName}</Var>!</T>Контроль статических строк
Правило static-string гарантирует, что в функции перевода передаются только статические (неизменяемые) строки.
const gt = useGT();
// ❌ Wrong
gt(`Hello ${name}`)
gt('Hello ' + name)
// ✅ Правильно
gt('Hello {name}!', { name })Конфигурация
Добавьте в конфигурационный файл ESLint:
import { defineConfig } from 'eslint';
import gtLint from '@generaltranslation/react-core-linter';
export default defineConfig([
gtLint.configs.recommended,
]);Этот начальный релиз обеспечивает базовые возможности линтинга для шаблонов перевода в React Core. В будущих версиях будет расширено покрытие правил и добавлено автоисправление для других распространённых нарушений.
Дополнительные материалы
- Variable Components - Работа с динамическим контентом в переводах
- String Translation - Перевод простых текстовых строк