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.0
和npm 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)错误