【发布时间】:2017-12-21 10:16:19
【问题描述】:
对于我的应用程序,我有一个用户可以选择的“语句”下拉列表。当用户选择特定语句时,将进行一个 API 调用,该调用检索如何显示此数据的方式,称为 ViewOptions。格式如下:
[
{
"Id": 1,
"OptionName": "Graph and table"
},
{
"Id": 3,
"OptionName": "Query results"
}
]
现在我有一个不同的组件,它将在加载视图选项时呈现,该组件应显示一个选项卡,其中包含取决于视图选项的信息。因此,在此示例中,有一个选项卡必须显示图表和数据表,而另一个选项卡必须显示查询结果。
在标签组件中,我有以下 HTML:
<ngb-tabset justify="justified" *ngIf="viewOptions.length">
<ngb-tab *ngFor="let vo of viewOptions" id="{{vo.Id}}">
<ng-template ngbTabTitle>{{vo.OptionName}}</ng-template>
<ng-template ngbTabContent></ng-template>
</ngb-tab>
</ngb-tabset>
因此,对于每个视图选项,将使用正确的标题呈现一个选项卡。现在我的困惑在于我应该如何处理“ngbTabContent”这件事。在这里,我想要一个取决于视图选项的特定组件,例如,如果它是“图形和表格”,我有组件,对于“查询结果”,我有组件,等等......我对 Angular2 和我有一种感觉,我将不得不使用某种模板来执行此操作,但事实上我必须根据 *ngFor 中的 'vo' 参数动态地执行此操作,这让我有点头疼。
【问题讨论】:
-
谢谢,您提供的链接将我推向了正确的方向。
标签: angular iteration templating ngfor angular-components