如何在Angular中向本机元素添加多种样式

时间:2019-01-15 15:53:06

标签: javascript angular angular-renderer2

我正尝试使用renderer2 API将多种样式添加到angular的本机元素中。

我有一个要求,其中的样式将动态更改,并且可以具有多种样式。这就是为什么我不使用类(addClass / removeClass)的原因。

构造函数(     私人elRef:ElementRef,     私有渲染器:Renderer2   )

this.renderer.setStyle(this.elRef.nativeElement,“ text-align”,“ center”); .... ...

需要一种动态添加样式的方法。就像是: this.renderer.setStyle(this.elRef.nativeElement, {style1: value1, style2: value2});

2 个答案:

答案 0 :(得分:3)

尝试

 constructor(private element: ElementRef){
    let el = this.element.nativeElement;
    el.setAttribute('style', 'color: white; background: red');
  }

答案 1 :(得分:1)

您必须为每种样式多次调用它,或者仅使用addClass并在类中定义样式。

https://angular.io/api/core/Renderer2#addclass

https://angular.io/api/core/Renderer2#setStyle