如何正确决定 Angular 2 中的组件应该是什么?

use*_*696 4 html architecture web-component angular

我发现 Angular 2 组件非常好,因为我们可以写下适合我们正在构建的应用程序的自己的 HTML 元素,但是,由于我开始使用 Angular 2,我觉得我使用它们的方式是错误的.

我一直在使用组件的方式,而且我似乎其他人也在这样做,是在组件和视图之间建立 1-1 的对应关系。

换句话说,对于应用程序的每个视图,只创建一个组件并使用路由器来触发活动组件。

所以在这种情况下,会有这样的组件:

  • 仪表板组件 - 它是仪表板视图
  • 用户配置文件组件 - 它是用户配置文件视图
  • 销售清单组件 - 它是销售清单视图
  • 销售编辑器组件 - 它是销售编辑器视图,用于添加新销售或更新销售

等等。我的意思是,这行得通,但我觉得这是使用组件的错误方式。在我看来,不知何故组件应该比这更细粒度。

应该如何正确决定什么必须是 Angular 2 中的组件?真的应该在组件或视图之间进行这种 1-1 映射吗?如果不是,那么决定我们需要构建哪些组件的正确方法是什么?

Ata*_*hev 5

一个好的经验法则是避免重复。如果您发现自己复制粘贴代码 - 在组件中提取该代码。

另一个规则是简单。如果组件类变得太大 - 将其拆分为更小的独立部分。