Jest fails with error: Cannot find module 'react/lib/ReactComponentTreeHook'
Jest fails with error: Cannot find module 'react/lib/ReactComponentTreeHook'
我已经在我的 React 项目中安装了 Jest v17.0.3。
当我 运行 在本地开玩笑时它工作正常,但在构建服务器上它失败了:
Error: Cannot find module 'react/lib/ReactComponentTreeHook' from 'ReactDebugTool.js'
两台机器都是运行ning node版本6.9.1和npm版本4.0.2。
您能检查一下您使用的是哪个版本的 React 吗?两台服务器上是一样的吗?我会尝试删除 node_modules
并重新安装依赖项。我建议这样做的原因是,在 React v15.4.0 中,您无法导入私有 api,而且 ReactDebugTools.js
似乎正在尝试从 react/lib/...
.
导入
来自关于 React v15.4.0 的博文 (Link):
However, there is a possibility that you imported private APIs from react/lib/*, or that a package you rely on might use them. We would like to remind you that this was never supported, and that your apps should not rely on internal APIs. The React internals will keep changing as we work to make React better.
希望对您有所帮助!
我遇到了同样的问题,我删除了 node_modules 和 运行 npm install,它解决了这个问题。
使用相同版本的 react 和 react-dom。使用此命令后我的问题得到解决
npm install --save react@15.4.0 react-dom@15.4.0
这个问题专门出现在react 15.4.0以上版本
在最新版本的 react 中,我们经常看到这个错误,因为我们加载了 2 个版本的 react:
为确保您只有 1 个版本,运行 在您的终端中输入以下内容:
npm ls react-dom
npm ls 反应
react 和 react-dom 版本必须相同。
如果这些 returns 中的任何一个超过 1 个版本,则不支持。然后,您必须在相应的 package.json
中更正它
我已经在我的 React 项目中安装了 Jest v17.0.3。
当我 运行 在本地开玩笑时它工作正常,但在构建服务器上它失败了:
Error: Cannot find module 'react/lib/ReactComponentTreeHook' from 'ReactDebugTool.js'
两台机器都是运行ning node版本6.9.1和npm版本4.0.2。
您能检查一下您使用的是哪个版本的 React 吗?两台服务器上是一样的吗?我会尝试删除 node_modules
并重新安装依赖项。我建议这样做的原因是,在 React v15.4.0 中,您无法导入私有 api,而且 ReactDebugTools.js
似乎正在尝试从 react/lib/...
.
来自关于 React v15.4.0 的博文 (Link):
However, there is a possibility that you imported private APIs from react/lib/*, or that a package you rely on might use them. We would like to remind you that this was never supported, and that your apps should not rely on internal APIs. The React internals will keep changing as we work to make React better.
希望对您有所帮助!
我遇到了同样的问题,我删除了 node_modules 和 运行 npm install,它解决了这个问题。
使用相同版本的 react 和 react-dom。使用此命令后我的问题得到解决
npm install --save react@15.4.0 react-dom@15.4.0
这个问题专门出现在react 15.4.0以上版本
在最新版本的 react 中,我们经常看到这个错误,因为我们加载了 2 个版本的 react:
为确保您只有 1 个版本,运行 在您的终端中输入以下内容:
npm ls react-dom
npm ls 反应
react 和 react-dom 版本必须相同。 如果这些 returns 中的任何一个超过 1 个版本,则不支持。然后,您必须在相应的 package.json
中更正它