npm 错误:通过 CLI 构建创建反应应用程序时找不到模块'.../immer.js'

Posted

技术标签:

【中文标题】npm 错误:通过 CLI 构建创建反应应用程序时找不到模块\'.../immer.js\'【英文标题】:npm error: Cannot find module '.../immer.js' when building a create react app through CLInpm 错误:通过 CLI 构建创建反应应用程序时找不到模块'.../immer.js' 【发布时间】:2021-08-20 03:55:04 【问题描述】:

我正在尝试使用 create react app 和 bootstrap 构建网站。我们通过 GH-pages 托管该站点,我们的存储库是 here。直到今天,我在本地部署站点时都没有遇到问题,但经过数小时后仍未能解决问题。

我将完成我执行的步骤以到达我所在的位置。

    通过 GH Desktop 克隆存储库 打开终端并输入brew reinstall node 移动到项目目录并输入npm install react-bootstrap bootstrap@4.6.0npm install 最后输入npm start

我遇到了这个:

当我查看“.../node_modules/immer/dist”时,我看到它包含“immer.d.ts”。此外,当我查看“.../node_modules/react-dev-utils”时,存在“immer.js”。我对Typescript了解不多,但是“main”条目看起来是存在的,并且文件都存在:

我已经卸载并重新安装了包管理器,存储库一整天。我什至重置了我的终端和文本编辑器,以便在重新启动时对其进行测试。我已经解决了许多 *** 问题并完成了一些事情,例如仅删除 node_modules 和 package_lock.json 文件然后输入npm install,但没有成功。

有人知道缺少什么吗?我该怎么办?

更新 按照响应中提供的步骤解决了“immer”文件的问题:清除缓存、更新存储库、获取新克隆、删除损坏的文件和安装 npm。

执行这些步骤后,终端返回此问题。我也尝试过对此进行故障排除,但感觉就像我在兜圈子。任何有针对性的建议都会有所帮助。

【问题讨论】:

【参考方案1】:

首先:从 git 索引中排除您的 node_modules 文件。 .gitignore 中有一个条目可将其排除,但看起来您在添加该条目之前已将 node_modules 包含在索引中。现在你需要运行更复杂的algorithm 来摆脱它。

快速解决您的问题(对我来说有点多余,但只是为了确保您没有错过任何重要的事情):

# force cleaning npm cache. you may have a broken package there
npm cache clean --force 

# clone repository into newly created directory (guaranteed to be clean)
git clone https://github.com/cameron-keene/ACE_Website somedir

# switch to the new directory
cd somedir

# remove broken node_modules
rm -rf node_modules

# remove (possibly) broken package-lock
rm package-lock.json

# fresh dependency install
npm install

现在看起来您存储在node_modules 中的immer 依赖项已损坏。因为它有很多丢失的文件,dist/immer.js 就是其中之一。这就是你得到错误的原因。

【讨论】:

感谢您的回复。我很高兴我问了这个问题,你让我了解了 git 索引。我完成了您建议的步骤:首先按照algorithm,然后按照您的步骤。毕竟,看起来“immer”文件已经修复,但现在终端又抛出了另一个问题。我已将其作为更新添加到此问题中。我希望你能帮忙。【参考方案2】:

这个问题已经解决了

npm install --legacy-peer-deps

Shoutout to this Stack Overflow answer

【讨论】:

以上是关于npm 错误:通过 CLI 构建创建反应应用程序时找不到模块'.../immer.js'的主要内容,如果未能解决你的问题,请参考以下文章

在 Vue CLI 中使用私有 npm 包服务/构建时的错误和警告

创建反应应用程序:npm 错误!在“....”附近解析时 JSON 输入意外结束

创建反应应用程序时使用 babel 的 npm start(或 yarn start)错误

是节点 5.0.3 的反应构建

无法运行“npm install expo-cli --global”

npm 运行构建时出错