例如,我有以下结构
main -- doTask1 -- task1-1.js -- task1-2.js -- doTask2 -- task2-1.js -- task2-2.js
如果我运行npm install
中doTask1
,一个新的目录node_modules
中创建doTask1
.
现在doTask2
,我需要使用相同的包,我是否需要运行npm install
在doTask2
一次吗?这将创造另一个node_modules
中doTask2
是重复的.管理这个的正确方法是什么?
未使用相对路径引用的节点模块的NPM解析是首先检查当前目录,然后向上遍历每个目录,查找node_modules文件夹.
所以在你的情况下,如果你想要相同的软件包/模块的相同版本,只需在main中安装:
最后,您可以全局安装所需的软件包/模块- 但是,这通常仅建议您从命令行所需的软件包(例如gulp,webpack等).在您的情况下,对于特定于应用程序的模块,最好将它们本地安装在node_modules文件夹下.
有关安装npm软件包的一些有用的NPM文档:
请在此处参阅"从node_modules文件夹加载"
这里有一篇稍微陈旧但相关的博文