分叉和修补后“错误:找不到模块”

Mak*_*Mak 6 node.js npm git-fork

我分叉了一个 npm 包(https://github.com/spark/particle-api-js),做了一些改变,在一个项目中使用了它(https://github.com/RoomKit/RoomKit-Backend)然后离开了它一会儿。

我今天继续研究它,突然节点声称未安装该软件包。如果我用版本号替换 package.json 中的自定义存储库,它就可以正常工作。在这两种情况下,包都在 node_modules 文件夹中。

我删除了 node_modules 文件夹并运行了npm install. 这没有问题,但在运行时它仍然抱怨。到底是怎么回事?

Edd*_*rja 6

如果您从 github 上的分叉包安装,您可能会丢失lib该包的目录。NPM 不会在分叉包上运行构建,因此如果您执行 npm install,它就不会存在。您可以通过进入node_modules目录、找到包的目录并检查其中的内容来验证这一点。仅仅拥有一个src文件夹是不够的。

解决这个问题的一种方法是确保您的分叉存储库签入任何buildlib文件夹。