4

我有EslintJSCS设置以在WebStorm中使用airbnb js 样式指南重新格式化一些代码库。在过去的两天里,我一直在有效地使用这个设置,但是突然之间,WebStorm 开始抛出这个错误......

ESLint 重新格式化的问题:index.js:初始化错误(ESLint)。意外的标识符

在此处输入图像描述

我想也许我的.eslintrc中有一些错误,但后来我使用相同的配置成功地重构了大约 150 个文件,然后才出现这个突然的错误。在此之前,JSCS编译器偶尔会抛出“不到一分钟的超时”异常,但随后我会通过关闭并重新打开文件来解决此问题。虽然eslint似乎并没有被这个技巧所吸引。

这是我的.eslintrc配置

{
  "extends": "airbnb",
  "env": {
    "browser": true,
    "node": true
  },
  "globals": {
    "document": false
  },
  "rules": {
    "validateIndentation": 4,
    "func-names": [
      "error",
      "never"
    ],
    "react/jsx-filename-extension": [
      1,
      {
        "extensions": [
          ".js",
          ".jsx"
        ]
      }
    ],
    "jsx-a11y/label-has-for": [
      2,
      {
        "components": [
          "Label"
        ],
        "required": {
          "some": [
            "nesting",
            "id"
          ]
        },
        "allowChildren": false
      }
    ],
    "jsx-a11y/anchor-is-valid": [
      "error",
      {
        "components": [
          "Link"
        ],
        "specialLink": [
          "to",
          "hrefLeft",
          "hrefRight"
        ],
        "aspects": [
          "noHref",
          "invalidHref",
          "preferButton"
        ]
      }
    ]
  }
}

一部分package.json

{
    "eslint": "^4.14.0",
    "eslint-config-airbnb": "^16.1.0",
    "eslint-loader": "^1.9.0",
    "eslint-plugin-flowtype": "^2.40.1",
    "eslint-plugin-import": "^2.8.0",
    "eslint-plugin-jsx-a11y": "^6.0.3",
    "eslint-plugin-react": "^7.5.1",
    "extract-text-webpack-plugin": "^3.0.2",
    "prop-types": "^15.6.0",
    "react": "^16.2.0",
    "react-dev-utils": "^4.2.1",
    "react-dom": "^16.2.0",
    "react-redux": "^5.0.6",
    "react-router-dom": "^4.2.2",
  },
  "babel": {
    "presets": [
      "react-app",
      "flow"
    ]
  },
  "eslintConfig": {
    "extends": "react-app"
  }
}

有人可以给我一些关于如何解决这个问题的指示。我怀疑它可能比 Eslint 更像是 WebStorm 错误。

PS:如果这个问题可能更适合superuser ,请原谅我。我只是认为这里的人很可能面临同样的问题。

4

2 回答 2

9

我在 phpstorm 中将这种模式用于我的 eslint 配置,现在错误已经消失,

{**/*,*}.{js,ts,jsx,tsx,html,vue},{!node_modules/*}
于 2021-08-01T07:48:39.223 回答
1

解决了yarn upgrade


我尝试使用新项目重新创建问题的尝试失败,使用相同的配置,两者eslintjscs成功运行。

Apply ESlint Code Style Rules然而,在非文件上使用 WebStorm 上下文菜单命令js(在 .eslintrc 本身上测试)时,我得到了一个更详细的错误。

尝试查找 '.eslintrc' 的父和基本 ESLint 配置文件时出错:[projectpath]\node_modules\lodash\lodash.js:386 '\u0149': ''n', '\u017f': 's',

我仔细检查了 lodash 包 node_modules 和 package.json,三次检查了设置配置(Eslint 和 JSCS),并确定我与测试项目的设置相同,这些测试项目没有错误。

跑步yarn upgrade lodash拯救了我的头发。由于我已经在运行最新的 lodash,我认为 yarn 的 Resolving and Rebuilding the packages 可以解决问题。

希望有人可能会在某个地方发现这对您有所帮助。

于 2018-01-10T13:19:57.113 回答