我正在编写一个列出一些用户的应用程序,并在点击用户时显示信息页面。用户具有不同类型(约20种类型),并且详细信息页面在布局和功能方面对于每种用户类型都不同。
我有一个主DetailsComponent
和20个特定组件(Type1DetailsComponent
,Type2DetailsComponent
等),必须显示在主DetailsComponent
内。
我想到了两种实现方法:
NgSwitch
中的DetailsComponent
选择特定组件ComponentFactoryResolver
和ViewContainerRef
创建所需的特定组件,并将其显示在DetailsComponent
第一种方法要求SpecificDetailsComponent
中列出所有NgSwitch
,从而降低可扩展性。
第二种方法似乎更好,但它有一些缺点:
我有什么办法可以改进第二种方法吗?
有没有更好的方法来实现目标?
答案 0 :(得分:1)
我相信目标元素确实被替换了,但是不管怎样,它只是一个错误的元素。我认为,即使组件很复杂,CFR也会快50%。