首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >同时开发节点app和多个节点模块,使用npm-link

同时开发节点app和多个节点模块,使用npm-link
EN

Stack Overflow用户
提问于 2013-09-18 04:03:57
回答 1查看 969关注 0票数 7

我正在构建一个node.js应用程序,并同时开发应用程序所需的模块。其中一些模块有peerDependencies,我正在努力弄清楚如何最好地构建我的开发环境。

到目前为止,我所拥有的:

代码语言:javascript
复制
/node-projects
|--/myApp
|----/node_modules
|------/symlink to module1
|------/symlink to module2
|
|--/module1
|
|--/module2

我使用npm link在我的应用程序的node_modules中创建一个符号链接,指向我的项目根目录中的模块。这让我可以轻松地使用git推送/拉取各个模块以及我的应用程序。

但是,如果module2将module1指定为peerDependency,我的应用程序将不会启动,并给出module2无法找到module1的错误。我认为这是因为它们实际上并不在同一个node_modules目录中。

有没有我遗漏的一块拼图,可以让模块2的符号链接识别模块1的符号链接?或者,我正在尝试实现的目标,目前使用npm是不可能的吗?有没有更好的策略来保持我的自定义模块与git/github同步,同时也要求它们出现在我的主应用程序中?

EN

回答 1

Stack Overflow用户

发布于 2013-09-18 04:48:19

在做了更多的研究之后,我想要完成的事情目前仅仅使用npm link是不可能的,而且似乎没有一个简单的答案来设置这种工作流程。

通过阅读npm的github repo上的this issue,我可以看到其他人也经历了同样的挫折,没有给出可能的解决方案。

我还遇到了模块npm-workspace,它似乎为我的问题提供了一个完整的解决方案,尽管我还没有尝试过。

另一种可能性是使用Git submodules。然而,在阅读有关git子模块的文章时,我看到很多人抱怨说,它们很难正确设置,而且似乎很容易在主git代码库中意外地包含你的子模块。

在我有机会测试npm-workspace之前,我会等待接受我自己的答案,同时也许会有人提出更好的解决方案。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18858928

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档