eslint-plugin-turbo

eslint-plugin-turbo帮助你找出代码中使用的但不是 Turborepo 哈希计算一部分的环境变量。源代码中使用但未在 turbo.json 中记录的环境变量将在你的编辑器中高亮显示,并在 ESLint 输出中显示错误。

安装

eslint-config-turbo 安装到你的 ESLint 配置所在的位置:

Terminal
npm i --save-dev eslint-config-turbo -w @acme/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']];

否则,你可以在规则部分配置你想使用的规则。

./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"]
}

然后在规则部分配置你想使用的规则。

./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]+$"]
      }
    ]
  }
}