javascript - 在 ESLint 中扩展多个推荐配置

标签 javascript angularjs jasmine static-code-analysis eslint

故事:

目前,我们正在扩展推荐的 ESLint 配置:

{
  "extends": "eslint:recommended",
  ...
  "plugins": [
    "angular",
    "jasmine",
    "protractor"
  ],
  "rules": {
    "no-multiple-empty-lines": 2,
    "no-trailing-spaces": 2,
    "jasmine/valid-expect": 2
  }
}

还使用 angularjasmineprotractor ESLint 插件,这些插件还随附有它们自己推荐的配置(默认规则严格级别和默认规则参数)。

问题:

我们如何同时使用所有推荐的配置 - ESLint 和所有使用的插件附带的配置?


尝试了以下方法:

{
  "extends": [
    "eslint:recommended",
    "plugin:protractor/recommended",
    "plugin:jasmine/recommended",
    "plugin:angular/recommended"
  ],
  ...
}

但出现以下错误:

Cannot read property 'recommended' of undefined

最佳答案

How can we use all the recommended configurations at the same time - the one that ESLint and all the used plugins ship with?

你的语法是正确的,多个扩展是这样加载的:

{
  "extends": [
    "eslint:recommended",
    "plugin:protractor/recommended",
    "plugin:jasmine/recommended",
    "plugin:angular/recommended"
  ]
}

但是,这需要所讨论的插件实际上与推荐设置捆绑在一起。 eslint-plugin-angular does not ,你必须自己安装它:

npm install --save-dev eslint-config-angular

将您的 eslint 设置更改为

{
  "extends": [
    "eslint:recommended",
    "plugin:protractor/recommended",
    "plugin:jasmine/recommended",
    "angular"
  ]
}

它应该可以工作。

关于javascript - 在 ESLint 中扩展多个推荐配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36238619/

相关文章:

javascript - 如何在 AngularJS 指令中获取元素的 x 和 y 位置

javascript - AngularJS 1 包含来自模板的预制 html 代码

angular - 使用 socket.io 模型对 Angular 5 进行单元测试

javascript - 评估不在焦点中的元素

javascript - backbone.js:我将如何使用 backbone.js 处理从客户端向服务器发送登录数据

javascript - Handsontable:从坐标获取字符串范围

javascript - AngularJS Jasmine 测试: scoped variable always undefined

javascript - 将 GeoJson LineString 格式化为虚线

angularjs - 如何使用 Mongoose、Mean、Express 和 Angular 显示大量数据

javascript - 难以 mock Promise.all