如何为角度2组件提供多个视图\视图模板?
我必须使用ng内容吗?这不是我想要的功能。可能是指定模板URL的组件属性,但如何更改组件类中的view\template?
最佳答案
今天也要考虑这个问题。我发明了这个解决方案。也许它会在将来帮助你。
export class MyModel {
lala;
constructor() {
this.lala = "llaala";
}
appendToLala(param: string){
this.lala += param;
}
}
@Component({
selector: 'c1',
template: `<div><h2>Hello {{lala}}</h2></div>`,
})
export class Component1 extends MyModel {
constructor(){
super();
this.appendToLala(" bebebe");
}
}
@Component({
selector: 'c2',
template: `<div><h2>Hello {{lala}}</h2></div>`,
})
export class Component2 extends MyModel {
constructor(){
super();
this.appendToLala(" nenene");
}
}
其思想是创建一个抽象的组件模型,并将其用作@component的父级。如果需要,您可以从模型创建一个树,@component类将始终是树中的一个叶。