目前我是用IF做的,但是例如在Vue.JS中有动态组件。在Angular中有类似的东西吗?
<app-tabs-choice *ngIf="action.type == 'choice'"></app-tabs-choice>
<app-tabs-comment *ngIf="action.type == 'comment'"></app-tabs-comment>
<app-tabs-message *ngIf="action.type == 'message'"></app-tabs-message>
4条答案
按热度按时间disho6za1#
有多种方法可以实现:
1.使用ngSwitchCase
1.您也可以通过路由实现此目的
1.如果只有一个标签组件,那么可以使用NgTemplateOutlet创建可重用组件。
sr4lhrrt2#
Angular中有Lazy Loading,但是它是基于路由的,换句话说,你不能基于ngIf指令来延迟加载组件,但是如果它们的路由不同,你可以延迟加载它们
z9gpfhce3#
您可以使用
ngComponentOutlet
,但这完全取决于您的用例:在您的元件中:
uplii1fm4#
您可以使用以下名称动态加载组件:
HTML:
有关详细信息,请查看this link