我想使用我创建的组件如下:
<vx-alert class="au-upper-center">
<p>Upper Center</p>
</vx-alert>
在vx-alert
组件中,我想拉出HTML中应用的类列表,这些类导致组件被实例化。最后,我想在vx-alert
组件中添加其他类。我可以非常轻松地替换vx-alert
组件类(如下所示):
@Component({
moduleId: module.id,
selector: 'vx-alert',
templateUrl: 'alert.html'
})
export class AlertComponent extends I18N implements OnInit {
@HostBinding('class') private classList:string;
ngOnInit() {
this.classList = 'au-ease-in-out au-20000ms';
}
}
但是当this.classList
被指定为新值时,HTML代码中设置的原始类将被覆盖...所以我如何检索HTML提供的类,以便我可以以编程方式将这些类连接到我的确定的课程?
我的Plunker已更新为使用@acdcjunior提供的答案:
答案 0 :(得分:2)
您可以将class
的{{1}}属性视为对其的输入(vx-alert
)。这样,你就可以读出它的价值。
之后,您可以使用@Input('class')
进行修改:
@HostBinding('class')