我知道你可以采用的不同类方法和:主机选择器,但我想根据我在组件类中的属性应用条件托管。
我说我有
@Input('val') val: string;
然后根据该输入我计算元素的高度,并希望通过host
的{{1}}配置应用它。我该怎么做?
我知道使用@Component
的解决方法并使用常规JavaScript应用样式,但我对这种方法并不满意,所以我正在寻找"角度方法"。
由于缺乏Angular网站的文档以及完全没有现实世界的例子,我真的在这里苦苦挣扎。
答案 0 :(得分:1)
您可以像这样使用@HostBinding
装饰器:
@Input('val') val: string;
@HostBinding('attr.width')
width:string;
ngAfterViewInit() {
this.width = this.val + 'px'; // for example
}
答案 1 :(得分:1)
我认为你可以写这样的东西
@Input('val') val: string;
@HostBinding('style.height') get height {
return this.val + 'px';
}