【问题标题】:How to properly setup the Airbnb's javascript linter in Atom?如何在 Atom 中正确设置 Airbnb 的 javascript linter?
【发布时间】:2017-05-28 21:21:23
【问题描述】:

令人惊讶的是,没有任何好的指南。 我不能让 linter 工作。我在保存所有项目的目录上设置了扩展 airbnb 的 .eslintrc。我不知道它是否是正确的目录。我也做了this。 Atom 中没有任何 lint(文件确实有 linting 错误),所以我猜有一些缺失的步骤。

【问题讨论】:

  • 致最接近的选民:这怎么跑题了?它特别在帮助中心声明有关编程相关工具的问题主题。引用:“有关通用计算硬件和软件的问题对于 Stack Overflow 来说是题外话,除非它们直接涉及主要用于编程的工具”(强调我的)。它可能还有其他问题,但与 SO 的相关性不是其中之一。
  • 您是否使用控制面板手动运行 linter?
  • 我没有这样做,但是 Atom-Linter 组织的所有者在我维护的项目上设置了它。他将其作为linter-eslint 包的扩展。检查此以获取更多详细信息:github.com/AtomLinter/linter-puppet-lint/blob/master/…
  • 我正试图摆脱问题禁令。有人能解释一下为什么这个问题被否决了吗?

标签: javascript atom-editor lint eslint


【解决方案1】:

找到this 指南。现在可以正常使用了。

链接中的相关信息:

在您的项目中配置 ESLint

我们需要做的第一件事是在我们的项目中配置 ESLint。请记住,我们将使用 AirBnB 样式指南,因此我们无需安装所需的包,并使我们的 ESLint 配置扩展自 AirBnB ESLint 配置。

在您的项目本地安装 ESLint:> npm install eslint --save-dev。 安装 AirBnB ESLint 配置。按照包说明,我们需要执行下一句来安装正确的包版本和依赖项:

> export PKG=eslint-config-airbnb;
> npm info "$PKG" peerDependencies --json | command sed 's/[\{\},]//g ; s/: /@/g' | xargs npm install --save-dev "$PKG"

在我们项目的根目录中创建一个.eslintrc 文件。我们必须确保将属性"extends": "airbnb" 作为配置的一部分。 接下来是一个示例配置文件。请注意,我们从 AirBnB 继承了配置。另外,我们添加了eslint规则valid-jsdocrequire-jsdoc,强制我们为函数、方法和类写一些JSDoc。

{
  "extends": "airbnb",
  "parser": "babel-eslint",
  "env": {
    "browser": true,
    "node": true,
    "es6": true,
    "mocha": true
  },
  "rules": {
    "valid-jsdoc": ["error", {
      "requireReturn": true,
      "requireReturnType": true,
      "requireParamDescription": true,
      "requireReturnDescription": true
    }],
    "require-jsdoc": ["error", {
        "require": {
            "FunctionDeclaration": true,
            "MethodDefinition": true,
            "ClassDeclaration": true
        }
    }]
  }
}

现在我们的项目配置了 ESLint 和 AirBnB 的基本规则集,但它需要我们手动执行 ESLint 或以某种方式自动化(在构建过程中)。

安装 Atom 插件

让我们去配置 Atom 以在编码时自动 lint 文件并向我们显示消息。

确保您已成功完成前面的部分。

安装 Atom 插件linter-eslint。你完蛋了 :) 该插件将自动检测项目中的.eslintrc 文件,并将开始动态检查显示所有错误和警告的源代码。

【讨论】:

  • 如果链接不可用,您应该引用/总结链接中的相关文本
猜你喜欢
  • 2021-12-02
  • 2015-07-01
  • 2018-07-04
  • 1970-01-01
  • 2023-04-07
  • 2020-04-18
  • 2017-06-05
  • 2018-08-17
  • 2019-08-07
相关资源
最近更新 更多