16

好像我在这里遗漏了一些东西,它应该可以正常工作,但eslint不断抛出以下内容:

无法解析模块“反应”的路径。(导入/未解决)

“react”(导入/扩展)缺少文件扩展名

当试图import React from 'react'

这是一些调试信息:

包.json

{
  "dependencies": {},
  "devDependencies": {
    "react": "16.3.2",
    "react-dom": "16.3.2",
    "@storybook/addon-actions": "^3.4.2",
    "@storybook/addon-links": "^3.4.2",
    "@storybook/addons": "^3.4.2",
    "@storybook/react": "^3.4.2",
    "babel-core": "^6.26.3",
    "babel-eslint": "^8.2.3",
    "babel-preset-env": "^1.6.1",
    "babel-preset-react": "^6.24.1",
    "babel-runtime": "^6.26.0",
    "eslint": "^4.19.1",
    "eslint-config-airbnb": "^16.1.0",
    "eslint-config-prettier": "^2.9.0",
    "eslint-plugin-import": "^2.11.0",
    "eslint-plugin-jsx-a11y": "^6.0.3",
    "eslint-plugin-react": "^7.7.0"
  }
}

.eslintrc

{
  "parser": "babel-eslint",
  "extends": ["airbnb", "prettier"],
  "env": {
    "browser": true,
    "node": true,
    "es6": true
  }
}

.babelrc

{
  "presets": ["env", "react"]
}

编辑器:原子 v1.26.1

谢谢。

4

7 回答 7

11

如果您使用的是 React Native,在您的文件中添加.native.js为允许的扩展名可能会有所帮助。 此外,如果您使用的是 Typescript,那么它也会有所帮助。.eslintrc
.ts.tsx

"settings": {
  "import/resolver": {
    "node": {
      "extensions": [".ts", ".tsx", ".native.js"]
    }
  }
}
于 2019-07-25T05:47:40.530 回答
3

我认为它抱怨是因为react应该在dependencies

{
  "dependencies": {
    "react": "16.3.2",
    "react-dom": "16.3.2",
  },
  "devDependencies": {
    "@storybook/addon-actions": "^3.4.2",
    "@storybook/addon-links": "^3.4.2",
    "@storybook/addons": "^3.4.2",
    "@storybook/react": "^3.4.2",
    "babel-core": "^6.26.3",
    "babel-eslint": "^8.2.3",
    "babel-preset-env": "^1.6.1",
    "babel-preset-react": "^6.24.1",
    "babel-runtime": "^6.26.0",
    "eslint": "^4.19.1",
    "eslint-config-airbnb": "^16.1.0",
    "eslint-config-prettier": "^2.9.0",
    "eslint-plugin-import": "^2.11.0",
    "eslint-plugin-jsx-a11y": "^6.0.3",
    "eslint-plugin-react": "^7.7.0"
  }
}
于 2018-04-27T18:13:19.477 回答
1

我安装了reactreact-domnpm i -E react react-dom尝试安装没有正确安装的确切版本。

npm i react react-dom -D解决了这个问题。

于 2018-04-27T18:29:43.877 回答
1

这也发生在我身上。就我而言,这是因为我运行的是npm版本 6,但是团队成员通过npm版本 7 安装了一个新库。版本 7 使用新版本的锁定文件格式。

我们的解决方案是确保每个人都运行相同的npm版本,以便我们的package-lock.json文件保持一致。

于 2021-05-27T18:53:32.880 回答
0

我遇到了一些问题,我从项目中删除了 nodo_modules 目录并运行 yarn install / npm install

于 2021-03-30T09:03:28.233 回答
0

只需注释掉导入并运行。然后再次删除评论。它对我有用。

于 2022-02-23T08:26:49.353 回答
-1

我有同样问题的经验。

就我而言,出现此错误是因为我从远程存储库中提取了新更新并且它带来了新的依赖项。

为了解决这个问题,我只需安装该依赖项npm install

于 2021-02-17T08:20:40.217 回答