4

我有两个本地 npm 项目,AB. 假设A依赖react并将其列为package.json文件中的依赖项。我npm link用来A提供B.

B取决于Areact。我习惯npm link A使用本地版本的A. 但是,据我所知,这A已经依赖于react,我不包含react在我package.jsonB. 当我打电话时,npm install我希望 npm 在node_modules文件夹中包含传递依赖项。但是,只要我不在自己的文件中包含传递依赖项,我就无法在其中找到它,也不能在 's 的代码中使用react它。BBpackage.json

当我包含其他模块时react,我也会得到传递依赖,比如fbjsencoding解析到我的node_modules文件夹中。

那么,错在哪里呢?A/ 为什么不包含在B's文件夹中的依赖项node_modules

4

1 回答 1

3

我对 npm 5.6 有同样的行为。将 npm 降级到 4.6 版本后,“npm install”运行正常。在此之后,我发现问题是我的队友提交的 package-lock.json 并没有同步到 package.json

于 2018-01-17T15:11:45.850 回答