簡體   English   中英

Eslint 報告依賴配置的 eslintrc 配置問題

[英]Eslint reporting eslintrc configuration problems for dependency configs

運行以下 lint 命令時收到棄用警告

eslint src/js/**/*.js src/js/**/*.jsx webpack.config.js --quiet

警告:

DeprecationWarning: [eslint] 'ecmaFeatures' 配置文件屬性已被棄用,並且無效。 (在 /Users/me/Documents/my-project/node_modules/eslint-config-airbnb/rules/react.js 中找到

這似乎是在抱怨react-a11y.jsreact.js下的eslint-config-airbnb列出的文件。 這些文件確實包含頂級配置

ecmaFeatures: {
  jsx: true
}

這似乎是不正確的: github issuedocs 然而,似乎( 文檔),其node_modules應該由eslint被忽略了,反正只是要明確,我已經添加了下面我.eslintignore

node_modules/**/*.*
node_modules 

為什么我會收到關於 node_modules 中問題的警告? 我唯一能想到的是,忽略列表不包括 eslint 本身的配置,但這似乎很牽強,它可能會警告我 node_modules 中每個 eslintrc 文件的每個過時或錯誤配置?

如果相關,我的.eslintrc.json

{
  "env": {
    "es6": true,
    "browser": true,
    "node": true,
    "jest": true
  },
  "extends": ["airbnb", "prettier", "prettier/react"],
  "parserOptions": {
    "ecmaVersion": 2016,
    "sourceType": "module",
    "ecmaFeatures": {
      "experimentalObjectRestSpread": true,
      "jsx": true
    }
  },
  "plugins": ["prettier", "react"],
  "parser": "babel-eslint",
  "rules": {
    "no-param-reassign": 0
  }
}

我該如何解決這個問題?

編輯:

升級到eslint-config-airbnb@latest看起來頂級ecmaFeatures問題已經解決)會導致看起來更嚴重的錯誤:

 /Users/me/Documents/my-project/node_modules/eslint-config-airbnb/rules/react.js: Configuration for rule "react/jsx-boolean-value" is invalid: Value "never,[object Object]" should NOT have more than 1 items. Referenced from: /Users/me/Documents/my-project/node_modules/eslint-config-airbnb/index.js Referenced from: /Users/me/Documents/my-project/.eslintrc.json Error: /Users/me/Documents/my-project/node_modules/eslint-config-airbnb/rules/react.js: Configuration for rule "react/jsx-boolean-value" is invalid: Value "never,[object Object]" should NOT have more than 1 items. Referenced from: /Users/me/Documents/my-project/node_modules/eslint-config-airbnb/index.js Referenced from: /Users/me/Documents/my-project/.eslintrc.json at validateRuleOptions (/Users/me/Documents/my-project/node_modules/eslint/lib/config/config-validator.js:113:15) at Object.keys.forEach.id (/Users/me/Documents/my-project/node_modules/eslint/lib/config/config-validator.js:153:9) at Array.forEach (native) at validateRules (/Users/me/Documents/my-project/node_modules/eslint/lib/config/config-validator.js:152:30) at Object.validate (/Users/me/Documents/my-project/node_modules/eslint/lib/config/config-validator.js:230:5) at loadFromDisk (/Users/me/Documents/my-project/node_modules/eslint/lib/config/config-file.js:549:19) at load (/Users/me/Documents/my-project/node_modules/eslint/lib/config/config-file.js:592:20) at configExtends.reduceRight (/Users/me/Documents/my-project/node_modules/eslint/lib/config/config-file.js:421:36) at Array.reduceRight (native) at applyExtends (/Users/me/Documents/my-project/node_modules/eslint/lib/config/config-file.js:403:28)

更新 babel-preset-react 和 eslint-plugin-react,為我解決了問題。 如果這引發了新的錯誤,您將被迫更新幾乎所有與 eslint 相關的內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM