我们正在使用webpack
来要求项目中的资源,我们还使用NPM中的许多子模块。由于我们还在开发子模块,因此在使用代码时我们使用npm link <module-name>
。
我们在整个产品和子模块的多个位置都需要一个模块。当尝试链接此模块并从另一个子模块访问该代码时,会出现问题。
简而言之,我们的设置如下:
+- main-project
+- alfa
| +- common
+- bravo
| +- common
+- common
然后,我们在代码中使用module.exports()
和require()
来根据需要使用模块。
common
子模块在alfa
和bravo
的package.json文件中按版本发布和引用时,按预期工作。
我希望能够在npm link common
中使用main-project
来依赖所有子模块,最好是否也链接。
作为脚注,我们在整个模块中使用package.json文件,类似于以下示例
{
"name": "x-ray",
"version": "0.0.7",
"main": "index.js",
"scripts": { ... },
"repository": "...",
"homepage": "https://example.com",
"dependencies": {
"alfa": "^1.0.9",
"bravo": "^1.0.5",
...
}
}
这是使用webpack进行设置的正确方法吗?我们应该使用其他形式的依赖吗?对等例如?