如果我将我发布的模块收缩包装到npm,这是否会以任何方式影响依赖于该模块的模块的安装?或者npm是否只是忽略了依赖关系的shrinkwrap文件而只看了package.json?
答案 0 :(得分:3)
NPM不会忽略收缩包裹,因为它是为了这个特定目的而制作的。相反,NPM会在遇到shrinkwrap时忽略package.json。您基本上使用shrinkwrap来锁定当前安装的依赖项版本,即使您没有在package.json中声明任何特定版本。
如docs中所述:
此命令会锁定程序包依赖项的版本,以便您可以精确控制安装程序包时将使用的每个依赖项的版本。如果要使用“npm install”,仍然需要“package.json”文件。