【发布时间】:2017-10-27 00:50:00
【问题描述】:
我有一个组件“课程”。我将此组件用于列表。该列表有时是水平的,有时是垂直的。我可以在模板文件的组件内动态选择吗?
@Component({
selector: 'course',
templateUrl: getTemplateFile()
})
这样的功能会很棒!
【问题讨论】:
标签: angular angular-components
我有一个组件“课程”。我将此组件用于列表。该列表有时是水平的,有时是垂直的。我可以在模板文件的组件内动态选择吗?
@Component({
selector: 'course',
templateUrl: getTemplateFile()
})
这样的功能会很棒!
【问题讨论】:
标签: angular angular-components
我觉得这个教程很有帮助
https://scotch.io/tutorials/component-inheritance-in-angular-2
您可以简单地扩展您的基础组件并覆盖模板。这允许您拥有功能完全相同但模板不同的不同组件。
【讨论】:
当然,从 Angular 4 开始,就有一个 *ngIf/else 指令。您可以像这样切换模板:
<div *ngIf="isHorizontal; else verticalTemplate">
<span>horizontal</span>
</div>
<ng-template #verticalTemplate>
<span>vertical</span>
</ng-template>
我猜,您想根据屏幕宽度在水平和垂直布局之间切换。所以看看https://github.com/angular/flex-layout,它包含一个 ObservableMedia-Service。
【讨论】: