首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何组织角度工作区以在子项目之间共享某些组件?

如何组织角度工作区以在子项目之间共享某些组件?
EN

Stack Overflow用户
提问于 2021-03-31 08:39:24
回答 1查看 653关注 0票数 0

我有角CLI工作区,包含4个UI应用程序和一个库,它是API使用者。

现在需要在UI应用程序之间共享一些组件。我不想创建单独的库项目,因为共享组件中的每一个更改都需要开发人员重新构建库,以查看UI中的更改。

在这个问题上有什么好的做法吗?

我认为的备选办法是:

作为最后手段--创建库项目并构建它--每当../../projects/B/app/src/ComponentFromB

  • Create

  • 不关心分离时,只需在项目之间导入组件--比如在项目A中--导入

  • 库项目,但从不构建该项目中的组件,而是将该项目中的组件拆分为单独的模块--比如角材料组件--并直接导入模块

3是1和2的混合,并在每个组件/实用程序中添加创建模块。也许不需要模块/组件,我可以直接导入组件,并在需要时将它们重新定位在“本地”共享模块中?

还有其他选择吗?

EN

回答 1

Stack Overflow用户

发布于 2021-03-31 08:57:44

对此有不同的方法。

首先,由于版本控制,通常需要创建一个库或单独的项目。如果您打算在两个不同的项目中使用这个组件,那么在两个不同的项目中,您都不希望使用最新的组件版本。例如,新版本的组件在一个项目上工作,但在另一个项目上破坏布局。或者只是坏了,不相容,等等。

要处理多个项目,已经有许多工具了,其中最流行的工具之一是lerna https://github.com/lerna/lerna,尽管它对您的任务可能会造成过度的影响。

如果您非常担心构建新版本,那么其他解决方案将是构建这个库,并通过内部CDN为预构建版本提供服务。例如,gitlab提供NPM注册表,因此CI/CD可以构建一个新版本并在那里发布。这样,您就可以使用预构建的库版本,而不是每次都重新构建它。

这里的简单方法是使用git子模块,并包含在两个不同的项目repos中。这很容易做到,但是要小心,从长远来看,子模块的使用并不是很好。

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

https://stackoverflow.com/questions/66884326

复制
相关文章

相似问题

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