nodejs使用npm + package.json来parsing依赖关系

我已经构build了我的项目

/ index.js package.json node_modules |_Service_A |__main.js |__package.json |_Service_B |__main.js |__package.json 

当我在我的项目根目录下进行npm install ,/package.json中提到的依赖被parsing,但不是在node_modules / Service_A / package.json或node_modules / Service_B / package.json中。 我怎样才能使npm来解决不同文件夹之间的依赖关系?

Service_A和Service_B是我在node_modules [它们有依赖关系]中预先加载的本地模块。 我知道我可以把他们的依赖关系,只把他们放在顶层json,但如果他们依赖相同的模块,但不同的版本。 例如:Service_A需要jQuery 1.6和Service_B jQuery 1.7吗?

由于Service_A和Service_B是本地模块,我假设没有在您的顶级package.json dependecies部分中定义。 所以npm不知道他们甚至存在。

考虑在git仓库下开发你的本地模块,那么你可以用下面的方法来定义它们:

 "dependencies": { "public": "git://github.com/user/repo.git#ref", "private": "git+ssh://git@github.com:user/repo.git#ref" } 

你可以在你的软件包中添加一些东西,在这些package.json文件上调用npm install。 像下面的东西可能会做的伎俩。

 "scripts": { "preinstall": "npm install Service_A/ && npm install Service_B/" }