我已经在我的 React 项目中安装了 Jest v17.0.3。
当我在本地运行 jest 时它工作正常,但在构建服务器上它失败了:
错误:无法从“ReactDebugTool.js”中找到module“react/lib/ReactComponentTreeHook”
两台机器都运行 node 版本 6.9.1 和 npm 版本 4.0.2。
我已经在我的 React 项目中安装了 Jest v17.0.3。
当我在本地运行 jest 时它工作正常,但在构建服务器上它失败了:
错误:无法从“ReactDebugTool.js”中找到module“react/lib/ReactComponentTreeHook”
两台机器都运行 node 版本 6.9.1 和 npm 版本 4.0.2。
使用相同版本的 react 和 react-dom。使用此命令后我的问题已解决
npm install --save react@15.4.0 react-dom@15.4.0
这个问题特别发生在 react 15.4.0 以上。
你能检查一下你使用的是哪个版本的 React 吗?两台服务器都一样吗?我会尝试删除node_modules
并重新安装依赖项。我建议这样做的原因是,在 React v15.4.0 中您不能导入私有 apis,而且似乎ReactDebugTools.js
正在尝试从react/lib/...
.
来自关于 React v15.4.0 的博文(链接):
但是,您可能从 react/lib/* 导入了私有 API,或者您依赖的包可能会使用它们。我们想提醒您,这从未得到支持,您的应用程序不应依赖于内部 API。随着我们努力使 React 变得更好,React 内部结构将不断变化。
希望这可以帮助!
我遇到了同样的问题,我删除了 node_modules 并运行了 npm install 并解决了问题。