Самый простой способ получить доступ к элементу HTML - использовать Angulars ElementRef
. Вы можете прочитать больше об этом здесь . Пожалуйста, используйте это с осторожностью! Ниже приведен пример того, как использовать его в вашем случае:
В вашем app.component.html
<div #myelement>This is Pink</div>
В вашем app.component.ts
import { Component, ViewChild, ElementRef, AfterViewInit } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent implements AfterViewInit {
@ViewChild('myelement') el: ElementRef;
ngAfterViewInit() {
this.el.nativeElement.classList.add("myclass");
}
}
В вашем app.component.css
.myclass {
color: pink;
font-weight: bold;
}
РЕДАКТИРОВАТЬ:
Для чистого стиля, как уже упоминалось @SnorreDan, было бы лучше использовать директиву Angulars [ngClass]
. Вы можете посмотреть, как это сделать, в следующем примере:
В вашем app.component.html
<div [ngClass]="myColorClass">This may change color!</div>
<button (click)="makePink()">Pink</button>
<button (click)="makeGreen()">Green</button>
В вашем app.component.ts
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
myColorClass: string
makePink() {
this.myColorClass = 'pink';
}
makeGreen() {
this.myColorClass = 'green';
}
}
В вашем app.component.css
.pink {
color: pink;
font-weight: bold;
}
.green {
color: green;
font-weight: bold;
}
Надеюсь, это поможет!