Angular 无组件的角度4模板?
有没有办法在angular 2/4中声明/使用“模板”片段? 假设我有两个组件,其中有一些重复的部分,我不想让这个部分成为@组件。有什么办法可以避免吗? 假设以下片段:Angular 无组件的角度4模板?,angular,Angular,有没有办法在angular 2/4中声明/使用“模板”片段? 假设我有两个组件,其中有一些重复的部分,我不想让这个部分成为@组件。有什么办法可以避免吗? 假设以下片段: <div class="col-md-6 no-padding"> <label for="to_date">To</label> <datetime id="to_date" [(ngModel)]="to_date" [timepicker]="false"
<div class="col-md-6 no-padding">
<label for="to_date">To</label>
<datetime id="to_date" [(ngModel)]="to_date" [timepicker]="false"
(ngModelChange)="onToDateChanged($event)"
[datepicker]="to_options">
</datetime>
</div>
到
我不想在每个页面上声明这个div,我需要一个datetime选择器,我也不想让它成为@Component。
有什么建议/解决方法/帮助吗 一种方法是在父级中定义模板,并使用
ngTemplateOutlet
将其传递给子级
有关更多信息,请参阅本文:
一个简单的潜在解决方案,接近您想要的:
您可以在父组件中定义模板:
<div #myTemplate>Hello</div>
public class YourComponent {
@Input() template: TemplateRef;
....
}
然后,您可以将其传递给您的孩子:
<your-component [template]='templateForChild'></your-component>
您是否正在寻找类似于自定义结构指令的内容?()不,只是寻找一些include指令,我知道我可以在我的案例中使用bend@directive,但我想知道是否还有更直接的。。就像使用includeNo的好的旧模板语言一样,angular 2+中没有
ng include
。
public class YourComponent {
@Input() template: TemplateRef;
....
}