Reactjs 无法解析模块';反应dom';

Reactjs 无法解析模块';反应dom';,reactjs,webpack,react-dom,react-hot-loader,Reactjs,Webpack,React Dom,React Hot Loader,我很少看到与这类错误相关的帖子。但在我的问题上无法解决 My package.json: "react": "~0.14.7", "webpack": "^1.12.13", "react-hot-loader": "^3.0.0-beta.6", . . 我在网页上遇到以下错误: ERROR in ./public/src/main.js Module not found: Error: Cannot resolve module 'react-dom' in C:\Users\react-

我很少看到与这类错误相关的帖子。但在我的问题上无法解决

My package.json:

"react": "~0.14.7",
"webpack": "^1.12.13",
"react-hot-loader": "^3.0.0-beta.6",
.
.
我在网页上遇到以下错误:

ERROR in ./public/src/main.js
Module not found: Error: Cannot resolve module 'react-dom' in C:\Users\react-example\public\src 
@ ./public/src/main.js 19:16-36
但在cmd行中,当我这样做的时候

npm -v react-dom
我得了3.10.10分。多姆在那里。但我想知道为什么它仍然给出这个错误

当我通过npm“npm install react dom”安装react dom并运行webpack时,我发现以下错误:

ERROR in ./~/react-dom/lib/ReactDOMNullInputValuePropHook.js
Module not found: Error: Cannot resolve 'file' or 'directory' C:\Users\react-example/node_modules/react/lib/ReactComponentTreeHook in C:\Users\react-example\node_modules\react-dom\lib
 @ ./~/react-dom/lib/ReactDOMNullInputValuePropHook.js 13:29-72

ERROR in ./~/react-dom/lib/ReactDOMUnknownPropertyHook.js
Module not found: Error: Cannot resolve 'file' or 'directory' C:\Users\react-example/node_modules/react/lib/ReactComponentTreeHook in C:\Users\react-example\node_modules\react-dom\lib
 @ ./~/react-dom/lib/ReactDOMUnknownPropertyHook.js 15:29-72

ERROR in ./~/react-dom/lib/ReactDOMInvalidARIAHook.js
Module not found: Error: Cannot resolve 'file' or 'directory' C:\Users\react-example/node_modules/react/lib/ReactComponentTreeHook in C:\Users\react-example\node_modules\react-dom\lib
 @ ./~/react-dom/lib/ReactDOMInvalidARIAHook.js 14:29-72

ERROR in ./~/react-dom/lib/ReactDebugTool.js
Module not found: Error: Cannot resolve 'file' or 'directory' C:\Users\react-example/node_modules/react/lib/ReactComponentTreeHook in C:\Users\react-example\node_modules\react-dom\lib
 @ ./~/react-dom/lib/ReactDebugTool.js 16:29-72

请提供帮助。

问题是
react-dom
未安装,当您点击
npm-v react-dom
时,它会给您提供
npm
的版本,而不是
react-dom
版本,您可以使用
npm-v
npm-v react-dom
检查是否会给您相同的结果。 您正在错误地检查程序包版本

如何正确安装react和react dom

使用此选项安装react和react dom:

npm install react react-dom --save
之后,您可以检查
package.json
文件,如果react和react dom安装正确,您将找到相应的条目

如何检查安装包版本

要检查所有本地安装的软件包版本,请执行以下操作:

npm list    
对于全局安装的软件包,还应使用-g:

npm list -g
要检查任何特定软件包的版本,请同时指定软件包名称:

npm list PackageName

For Example =>
   npm list react
   npm list react-router
安装后,
package.json
将如下所示:

{
  "name": "***",
  "version": "1.0.0",
  "main": "***",
  "scripts": {
     ....
  },
  "repository": {
     ....
  },
  "keywords": [],
  "author": "",
  "dependencies": {
    ....
    "react": "^15.4.2",          //react
    "react-dom": "^15.4.2",      //react-dom
     ....
  },
  "devDependencies": {
     ....
  }
}
react-dom
的最新版本为:15.4.2


参考资料:

任何读到这篇文章却无法理解的人。我也遇到了同样的问题,我最终通过安装解决了这个问题,它只是运行以下命令

npm i react router dom--为浏览器应用程序保存


npm i react router native
用于本机应用程序。

我使用了“npm update”,解决了我的问题。

尝试
rm-rf node_模块和纱线
rm-rf node_模块和npm安装
如果您使用npm而不是纱线。

我遇到此错误的具体问题:

在./src/index.js模块中找不到错误:错误:无法解析 中的“eact dom” 'C:\Users\Jose\Desktop\woz-u-React\React课程\React课程一\src' @./src/index.js 2:0-32@multi (网页包)-开发服务器/客户端/src/index.js


要解决此问题,我必须在安装之前解压缩文件夹。

您可能需要更新
react
react dom
。尽管实际安装了
react dom
,但我在
^15.5.4
上遇到了这个问题,并且它随
^16.8.6
一起消失了:

$ # update the react and react-dom modules
$ yarn add react react-dom
确保两个版本在
package.json中完全匹配:

"react": "^16.8.6",
"react-dom": "^16.8.6",
再次删除
warn.lock
node\u模块
,以及
warn

rm -Rf yarn.lock node_modules && yarn

在我的例子中,它是我的webpack.conf中的一个别名,它正在查找
@hot loader/react dom

在我的例子中,我的webpack.config.common.js中有一个别名:

 resolve: {
    extensions: ['.js', '.jsx'],
    alias: {
      'react-dom': '@hot-loader/react-dom',
    },
  },
我刚刚删除了这一行:

'react-dom': '@hot-loader/react-dom',

而且已经修好了

以下命令将解决此问题


npm install react-dom——对于那些使用包裹的用户,如果您针对基于浏览器的应用程序的
节点,则可能会发生这种情况

Parcel有3种方法可以从您的
包中推断出这一点。json

"react": "^16.8.6",
"react-dom": "^16.8.6",

删除节点作为目标,或在命令行中将
--target
指定为
browser

另见:


我在问题中说,在安装react dom后,我会收到这些错误。现在的情况也是如此。或者确保安装了@hot loader/react dom。这样,您就无法从@hot loader中获益。随着人们切换到react-refresh,这种情况会发生得更多。这为我解决了这个问题: