我正在构建一个模块化的nodejs应用程序,我具有以下文件夹结构:
- main_app
- index.js
- package.json
- plugin_1
- index.js
- package.json
- package-lock.json
- plugin_2
- index.js
- package.json
- package-lock.json
我在本地从main_app
,plugin_1
和plugin_2
开始要求。喜欢:
{
"name": "main_app",
"dependencies": {
"plugin_1": "file:../plugin_1",
"plugin_2": "file:../plugin_2"
}
}
没有在npm install
和plugin_1
上运行plugin_2
,而是在main_app
上运行。 NPM在plugin_1
和plugin_2
上成功安装依赖项,并且主应用程序运行良好。我剩下以下文件夹结构:
- main_app
- index.js
- package.json
- package-lock.json
- node_modules/
- plugin_1
- index.js
- package.json
- package-lock.json
- node_modules/
- plugin_2
- index.js
- package.json
- package-lock.json
- node_modules/
但是,如果我对plugin_1
,plugin_2
或main_app
中的任何一个都具有相同的依赖关系,它将每次在每个文件夹上安装它。依赖关系很大,这在资源受限的系统上是一个问题。
理想情况下,我希望它一次在main_app/node_modules
上安装依赖项,如下所示:
- main_app
- index.js
- package.json
- package-lock.json
- node_modules/
- plugin_1
- index.js
- package.json
- package-lock.json
- plugin_2
- index.js
- package.json
- package-lock.json
有什么想法吗?预先感谢。