Как добавить классы для размещения в Angular 2?

Мне нужно динамически добавить атрибут класса хост-компонент, созданный с помощью Angular 2.

То, что я хочу сделать, не так: как добавить "класс" к элементу хоста?

В случае выше, было бы необходимо жесткое кодирование класса. Моя цель - добавить неизвестный класс во время компиляции, полученный в виде строки по параметру или что-то вроде.

Мне нужно внедрить класс изнутри Angular 2, а не определять его как атрибут. Также не следует избегать передачи других классов по параметру. Я также хотел бы избежать обращения с родным домом.

1 ответ

Используйте Renderer:

// Renderer.setElementClass(renderElement: any, className: string, isAdd: boolean) : any

class MyComponent {
  constructor(private elRef:ElementRef, private renderer: Renderer) {}

  ngOnInit() {
    this.renderer.setElementClass(this.elRef.nativeElement, "whatever", true || false)
  }
}
Другие вопросы по тегам