假设我有以下项目结构:
Common“LoggingClass”需要从NPM导入模块。我们假设该模块是UUID(https://www.npmjs.com/package/uuid)
问题或挑战如下:我们想在ProjectA和ProjectB中使用并导入“LoggingClass”。
事实是,他们可以毫无问题地从公共文件夹导入代码,但是那些项目中不存在模块“UUID”,因为我们没有在各自的 Package.json中指定>
我不想创建实际的节点模块,因为我的代码需要被检入git存储库。 (有人建议直接开发到node_modules目录中。)
我想知道社区中其他的打字稿开发人员在使用npm时分享他们的代码。 (如果它只是打字稿文件那就不会有问题,但是由于我们对npm的依赖关系......它变得复杂了)。
任何想法都将不胜感激!
答案 0 :(得分:1)
我不想创建实际的节点模块,因为我的代码需要被检入git存储库。
真正的npm模块实际上是一种去恕我直言的方式。您不必专门将其存储在npmjs.org
中(您可以拥有自己的npm存储库)。
有些人建议直接开发到node_modules目录。
这实际上是我能想象到的最不方便的方式。也许,我错过了一些重要的事情,但我很想知道他们的思维方式。
有些事情你无法通过基于git的解决方案轻松实现。例如,如何检查共享代码的特定版本,并保持其余代码完好无损?当您只有一个所有共享代码所在的目录时,相对很容易。但是,如果你有很多(基本上,目录为包),那么它会变得很麻烦。甚至搞清楚他们的版本"也很棘手 - 您必须发明并遵循git标记规则或其他方式来注释提交。
无论如何,我想说的是我的回答并不完全是你所要求的;我的回答是建议重新评估你关于(不)将代码打包到npm模块的位置 - 这是事实上是JavaScript / TypeScript社区中的标准 >
答案 1 :(得分:-2)
我想知道社区中其他的打字稿开发人员在使用npm时分享他们的代码
由于您的要求I do not want to create actual node modules since my code needs to be checked into a git repository.
我只是重新组织为