我在angular2中找到了nativeElement.classList.add()的替代方法。 (原始問題在這裏描述:looking for nativeElement.classList.add() alternative)如何在angular2中通過渲染器(或替代方法)獲取類屬性
但現在我想要在呈現新的類之前獲得類屬性。 因爲如果顏色值發生變化,新的類將被添加,但舊的不會被刪除。
所以我試圖解決
<button md-button color="accent" class="myClass"></button>
到
<button md-button color="accent" class="myClass md-accent"></button>
當顏色屬性更改警告,它應該呈現
<button md-button color="warn" class="myClass md-warn"></button>
現在它呈現
<button md-button color="warn" class="myClass md-accent md-warn"></button>
所以我試圖做的是:在更新this.color_
之前,刪除md-this.color_
類。
@Input()
set color(value: string) {
// READ CLASS ATTRIBUTE HERE, SO I CAN REMOVE THE OLD md-this.color_
this.color_ = value;
this.renderer.setElementClass(this.elementRef, 'md-' + this.color_, true);
}
通過nativeElement獲取屬性不是一個選項,因爲這在webworkers中不起作用。
任何想法的?
盲目刪除它你就不能調用'this.renderer.setElementClass(this.elementRef刪除它,「MD-」 + this.color_,假);'? –