简体   繁体   English

Eslint 错误,规则“导入/无循环”的配置无效

[英]Eslint error, configuration for rule "import/no-cycle" is invalid

Running my lint script "lint": "eslint --ext .js ."运行我的 lint 脚本"lint": "eslint --ext .js ." , gives me this error: ,给了我这个错误:

Error: .eslintrc » eslint-config-airbnb » //node_modules/eslint-config-airbnb-base/index.js » //node_modules/eslint-config-airbnb-base/rules/imports.js: Configuration for rule "import/no-cycle" is invalid: Value "∞" should be integer.错误:.eslintrc » eslint-config-airbnb » //node_modules/eslint-config-airbnb-base/index.js » //node_modules/eslint-config-airbnb-base/rules/imports.js:规则“导入”的配置/no-cycle" 无效:值 "∞" 应该是整数。

Package.json:包.json:

 "devDependencies": {
    "@babel/core": "7.9.0",
    "@babel/runtime": "7.9.2",
    "@babel/parser": "7.11.5",
    "@react-native-community/eslint-config": "1.0.0",
    "babel-eslint": "10.1.0",
    "babel-jest": "25.2.3",
    "babel-plugin-module-resolver": "4.0.0",
    "babel-preset-react-native": "4.0.1",
    "bluebird": "3.7.2",
    "catharsis": "0.8.11",
    "cross-env": "7.0.2",
    "escape-string-regexp": "2.0.0",
    "eslint": "6.8.0",
    "eslint-config-airbnb": "18.1.0",
    "eslint-config-react-native": "4.0.0",
    "eslint-plugin-import": "2.20.1",
    "eslint-plugin-jsx-a11y": "6.2.3",
    "eslint-plugin-react": "7.19.0",
    "eslint-plugin-react-hooks": "3.0.0",
    "eslint-plugin-react-native": "3.8.1",
    "husky": "4.2.3",
    "jest": "25.2.3",
    "jest-fetch-mock": "3.0.3",
    "jest-junit": "10.0.0",
    "jest-transform-stub": "2.0.0",
    "js2xmlparser": "4.0.1",
    "jsdoc": "3.6.6",
    "klaw": "3.0.0",
    "markdown-it": "10.0.0",
    "markdown-it-anchor": "5.2.7",
    "marked": "0.8.2",
    "metro-react-native-babel-preset": "0.59.0",
    "mkdirp": "1.0.4",
    "node": "12.10.0",
    "npm-check": "5.9.2",
    "react-test-renderer": "16.13.1",
    "redux-mock-store": "1.5.4",
    "requizzle": "0.2.3",
    "strip-json-comments": "3.1.0",
    "taffydb": "2.6.2",
    "underscore": "1.10.2"
  },

According to this thread https://github.com/airbnb/javascript/issues/2331#issuecomment-724114465根据这个线程https://github.com/airbnb/javascript/issues/2331#issuecomment-724114465

you need to update eslint-plugin-import to ^2.22.1 which supports value.您需要将eslint-plugin-import更新为支持值的^2.22.1

sharing here what i found that resolved this issue.在这里分享我发现解决这个问题的方法。 all the peer dependencies were installed and correct version, however this error was still showing up.所有对等依赖项都已安装并且版本正确,但是仍然出现此错误。

I changed the node_modules/eslint-config-airbnb-base/rules/imports.js "∞" to an integer to continue debugging.我将node_modules/eslint-config-airbnb-base/rules/imports.js "∞" 更改为整数以继续调试。 Next run showed this error, ESLint couldn't determine the plugin "import" uniquely.下次运行显示此错误, ESLint couldn't determine the plugin "import" uniquely. , which was the underlying problem. ,这是根本问题。 it turns out that eslint loads all configs from ancestor directories as described here, https://github.com/eslint/eslint/issues/13385#issuecomment-641252879 .事实证明,eslint 从祖先目录加载所有配置,如此处所述, https://github.com/eslint/eslint/issues/13385#issuecomment-641252879

I added "root":true to the .eslint config file and converted the update to the node_modules/eslint-config-airbnb-base/rules/imports.js .我在 .eslint 配置文件中添加了"root":true并将更新转换为node_modules/eslint-config-airbnb-base/rules/imports.js it now runs.它现在运行。 hope it helps others.希望它能帮助别人。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM