-4
module.exports = {
  root: true,
  parser: '@typescript-eslint/parser',
  plugins: ['@typescript-eslint'],
  extends: [
    'eslint:recommended',
    'plugin:@typescript-eslint/recommended',
  ],
};

每当我添加或删除这一行时:plugins: ['@typescript-eslint'] eslint 似乎表现相同。究竟plugins属性是什么以及何时使用它是必需的?

4

1 回答 1

3

如果您考虑一下插件是什么,这个问题就很简单了。文档并没有很好地直接说明 ESLint 插件是什么,但如果您通读文档(https://eslint.org/docs/user-guide/configuring),那么它很漂亮很容易弄清楚:

ESLint 支持使用第三方插件

使用插件定义的规则、环境或配置时。在使用插件之前,您必须使用 npm 安装它。

因此,插件是可以定义规则、环境或配置的第 3 方模块。

所以回答你的问题:

插件属性到底是做什么的[原文如此]

plugins 属性告诉 ESLint 你想使用哪些插件

什么时候需要使用它?[原文如此]

当你使用插件中的东西时,你必须先用plugins属性告诉 ESLint。


省略此字段时,插件似乎仍然有效

如果你使用extends带有 syntax 的选项plugin:<plugin>/<config>,那么 ESLint 会提前从插件中加载一个特定的文件。

为什么?因为这允许插件提供配置并减少您需要的配置量。插件的配置可以plugins为您提供选项,这意味着您不需要自己做。

于 2020-08-10T16:35:00.283 回答