gt-next Lint

适用于 gt-next 组件的 ESLint 插件。

GT Next Lint

目前处于 alpha 阶段,后续可能会有变更。

用于在 gt-next 组件中发现常见翻译错误的 ESLint 插件。

安装

npm install --save-dev @generaltranslation/gt-next-lint

配置

将以下内容添加到你的 eslint.config.mjs 中:

import gtNext from "@generaltranslation/gt-next-lint";

export default [
  {
    plugins: { 'gt-next': gtNext },
    rules: {
      'gt-next/no-dynamic-jsx': 'warn',
      'gt-next/no-dynamic-string': 'warn',
    },
  },
];

规则

no-dynamic-jsx

使用带变量组件的 <T> 组件包裹动态内容。

// ❌ 错误
<T>你好,{userName}!</T>

// ✅ 正确  
<T>你好,<Var>{userName}</Var>!</T>

no-dynamic-string

仅允许在翻译函数中使用字符串字面量。

const t = useGT();

// ❌ 错误
t(`Hello ${name}`)
t('Hello ' + name)

// ✅ 正确
t('Hello, {name}!', { name })

支持的组件

  • <Var> - 变量
  • <DateTime> - 日期
  • <Num> - 数值
  • <Currency> - 货币

支持的函数

  • useGT - 客户端侧翻译

本指南如何?