npm error: Cannot find module '.../immer.js' when building a create react app through CLI
npm error: Cannot find module '.../immer.js' when building a create react app through CLI
我正在尝试使用 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,但“主要”条目看起来存在,并且文件都存在:
我一整天都卸载并重新安装了包管理器和存储库。我什至重置了我的终端和文本编辑器以在重新启动时对其进行测试。我经历了许多 Whosebug 问题并做了一些事情,例如仅删除 node_modules 和 package_lock.json 文件然后输入 npm install
,但没有成功。
有谁知道少了什么?我该怎么办?
更新
'immer' 文件的问题已按照响应中提供的步骤修复:清除缓存、更新存储库、获取新克隆、删除损坏的文件以及安装 npm。
执行这些步骤后,终端返回了这个问题。我也尝试过对这个问题进行故障排除,但感觉我在兜圈子。任何有针对性的建议都会有所帮助。
首先也是最重要的:从 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
是其中之一。这就是您收到错误的原因。
此问题已通过
解决
npm install --legacy-peer-deps
我正在尝试使用 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,但“主要”条目看起来存在,并且文件都存在:
我一整天都卸载并重新安装了包管理器和存储库。我什至重置了我的终端和文本编辑器以在重新启动时对其进行测试。我经历了许多 Whosebug 问题并做了一些事情,例如仅删除 node_modules 和 package_lock.json 文件然后输入 npm install
,但没有成功。
有谁知道少了什么?我该怎么办?
更新 'immer' 文件的问题已按照响应中提供的步骤修复:清除缓存、更新存储库、获取新克隆、删除损坏的文件以及安装 npm。
执行这些步骤后,终端返回了这个问题。我也尝试过对这个问题进行故障排除,但感觉我在兜圈子。任何有针对性的建议都会有所帮助。
首先也是最重要的:从 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
是其中之一。这就是您收到错误的原因。
此问题已通过
解决npm install --legacy-peer-deps