eslint-plugin-turbo

eslint-plugin-turbo 可帮助您在代码中查找未被 Turborepo 哈希计算的、已使用的环境变量。在您的源代码中使用但未在 turbo.json 中记录的环境变量将在您的编辑器中高亮显示,错误将显示为 ESLint 输出。

安装

eslint-plugin-turbo 安装到您的 ESLint 配置文件所在的位置

终端
pnpm add eslint-plugin-turbo --filter=@repo/eslint-config

用法 (Flat Config eslint.config.js)

ESLint v9 使用如下所示的 Flat Config 格式

./packages/eslint-config/base.js
import turbo from 'eslint-plugin-turbo';
 
export default [turbo.configs['flat/recommended']];

否则,您可以配置您想要使用的规则,然后在 rules 部分进行设置。

./packages/eslint-config/base.js
import turbo from 'eslint-plugin-turbo';
 
export default [
  {
    plugins: {
      turbo,
    },
    rules: {
      'turbo/no-undeclared-env-vars': 'error',
    },
  },
];

示例 (Flat Config eslint.config.js)

./packages/eslint-config/base.js
import turbo from 'eslint-plugin-turbo';
 
export default [
  {
    plugins: {
      turbo,
    },
    rules: {
      'turbo/no-undeclared-env-vars': [
        'error',
        {
          allowList: ['^ENV_[A-Z]+$'],
        },
      ],
    },
  },
];

用法 (Legacy eslintrc*)

turbo 添加到您的 .eslintrc 配置文件中的 plugins 部分。您可以省略 eslint-plugin- 前缀

./packages/eslint-config/base.json
{
  "plugins": ["turbo"]
}

然后配置您想要使用的规则,在 rules 部分进行设置。

./packages/eslint-config/base.json
{
  "rules": {
    "turbo/no-undeclared-env-vars": "error"
  }
}

示例 (Legacy eslintrc*)

./packages/eslint-config/base.json
{
  "plugins": ["turbo"],
  "rules": {
    "turbo/no-undeclared-env-vars": [
      "error",
      {
        "allowList": ["^ENV_[A-Z]+$"]
      }
    ]
  }
}