Angular库-我可以导入组件代码吗?

我开始制作自己的角度组件库。主要原因是我想在以后的项目中重用组件,以提高生产力并节省时间。

现在,我可以在任何新项目中安装我的库并重新使用我的组件。

例如:

<div>
  <ng-mylib-simple-spinner></ng-mylib-simple-spinner>
</div>

问题在于我如何处理更复杂的组件?

如果我需要从用户那里获取数据并将其传递给服务或其他组件,该怎么办?例如登录表单组件,或者如果我想重用导航栏并更改我的RouterLink链接等。

如何在新项目中更改库组件的模板和逻辑? 我应该怎么办?

cozf123456 回答:Angular库-我可以导入组件代码吗?

我认为,您的问题是编程原则而不是编程逻辑。让我解释一下:

您的可重用组件应使您更容易开发表示层。这意味着,样式,行为以及与表示有关的所有其他内容,都应由组件来处理,而应尽可能少地从其他组件中了解。这称为去耦,这些组件通常称为“哑组件”。

当您希望可重用组件处理API请求和与表示无关的其他事情时,他们知道的太多了。它们是耦合的,不提供功能:重用演示。

如果要重用逻辑,请创建一个与表示分离的服务,并且该服务应处理该特定服务的服务逻辑。然后,将笨拙的组件放入其中以创建视图,并以正确的方式节省时间。

请记住:您希望您的组件彼此之间尽可能少地了解(因此它们是超级可重用的),并且只做一件事和一件事(表示,身份验证,列表功能,表组件,模态-组件),然后将它们像怪异的乐高积木一样放置。

因此,简而言之,您可以通过在“智能组件”中创建它们来处理更复杂的组件,这些组件不过是由“智能组件”胶水组合在一起的笨拙的组件(这是很有意义的逻辑)。 / p>

您的使组件能够完成所有工作的范例是为什么在那里发现有数百万个库可以做一件事的原因,但是您必须下载30Mb并放置一百万个配置选项才能使其运行。自己动手更容易,更简单。并将其应用于您的产品。

希望这会有所帮助! :)

本文链接:https://www.f2er.com/2990468.html

大家都在问