解决方法:“未找到规则'@ typescript-eslint / consistent-type-assertions'的定义”

eza*_*ala 14 npm typescript reactjs typescript-typings create-react-app

我的React应用没有因以下错误而无法编译:未找到规则'@ typescript-eslint / consistent-type-assertions'的定义

我有点茫然。我在项目中找不到任何当前的规则定义。该项目最初正在编译。重新构建应用程序后,该错误开始。

应用无法编译并出现错误:未找到规则“ @ typescript-eslint / consistent-type-assertions”的定义

packge.json-

{
  "name": "client",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "@types/react-dom": "16.9.0",
    "react": "^16.9.0",
    "react-dom": "^16.9.0",
    "react-router-dom": "^5.0.1",
    "react-scripts": "3.1.1",
    "styled-components": "^4.3.2",
    "typescript": "^3.5.3"
  },
  "scripts": {
    "start": "PORT=3005 react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test --transformIgnorePatterns",
    "e2e": "./node_modules/.bin/cypress open"
  },
  "eslintConfig": {
    "extends": "react-app"
  },
  "browserslist": {
    "production": [
      ">0.2%",
      "not dead",
      "not op_mini all"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  },
  "devDependencies": {
    "@testing-library/dom": "^6.1.0",
    "@testing-library/jest-dom": "^4.0.1",
    "@testing-library/react": "^9.1.3",
    "@types/jest": "^24.0.18",
    "@types/lodash": "^4.14.137",
    "@types/node": "^12.7.2",
    "@types/react": "^16.9.2",
    "@types/react-router-dom": "^4.3.4",
    "@types/styled-components": "^4.1.18",
    "babel-jest": "^24.9.0",
    "cypress": "^3.4.1"
  }
}
Run Code Online (Sandbox Code Playgroud)

And*_*ham 8

当我遇到这个问题时,我已经使用创建了一个全新的应用程序,create-react-app my-app --typescript然后从刚刚完成的另一个项目中复制了依赖项。在弄乱了一切之后,我注意到react-scriptsat是at版本3.1.1,当我终于再次运行package.json它时,工作3.1.2看起来像是罪魁祸首。工作package.json看起来像:

{
  "name": "my-app",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "@types/jest": "24.0.18",
    "@types/node": "12.7.5",
    "@types/react": "16.9.2",
    "@types/react-dom": "16.9.0",
    "node-sass": "^4.12.0",
    "react": "^16.9.0",
    "react-dom": "^16.9.0",
    "react-scripts": "3.1.2",
    "typescript": "3.6.3"
  },
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject"
  },
  "eslintConfig": {
    "extends": "react-app"
  },
  "browserslist": {
    "production": [
      ">0.2%",
      "not dead",
      "not op_mini all"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  }
}
Run Code Online (Sandbox Code Playgroud)

试图使错误消失是一项挑战,Visual Studio中存在一个邪恶的错误,该错误将使您VSCompiler.exe和其他服务仅使用服务挂起时所拥有的文件版本来挂起。不管您什么都不做,直到重新启动它们后才起作用,有关如何解决问题的一些提示,请参见此答案,我知道这是针对Angular的,但适用相同的原则。


Ari*_*her 5

我找到了解决方案。1)删除node_modules 2)将React-scripts的Package.Json行更新为:“” react-scripts“:” 3.1.2“” 3)运行npm i

这应该工作


kmg*_*mgt 5

只需更新react-scripts到版本3.1.2。我通过卸载并重新安装解决了该问题。在命令行中:

卸载:

npm uninstall react-scripts
Run Code Online (Sandbox Code Playgroud)

然后重新安装:

npm i react-scripts
Run Code Online (Sandbox Code Playgroud)


Möh*_*hre 0

我可以通过再次运行来解决问题yarn install。如果这不起作用,您可以尝试完全删除node_modules文件夹并yarn install再次运行。