eslint报告依赖configuration的eslintrcconfiguration问题

运行以下lint命令时,我收到了弃用警告

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

警告:

DeprecationWarning:[eslint]“ecmaFeatures”configuration文件属性已被弃用,不起作用。 (位于/Users/me/Documents/my-project/node_modules/eslint-config-airbnb/rules/react.js

这似乎是抱怨在eslint-config-airbnb列出的文件在react-a11y.jsreact.js 。 这些文件的确包含顶层configuration

 ecmaFeatures: { jsx: true } 

这似乎是不正确的: github问题 , 文档 。 但是,似乎( 文档 ) node_modules应该被node_modules忽略,无论如何,只是为了明确,我已经添加了以下内容到我的.eslintignore

 node_modules/**/*.* node_modules 

为什么我得到node_modules中的问题的警告? 我唯一能想到的是,忽略列表不包含eslint本身的configuration,但是这似乎相当复杂,它可能会警告我node_modules中的每个eslintrc文件的每个过时或错误configuration?

如果是相关的,我的.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有关的东西。