---
description: Пофикшено в версии 15.1.1
---

# NgClass

### Функциональность

Adds and removes CSS classes on an HTML element.

### Как оно работает

Исключительный сахар, в директиве инжектиктся текущий элемент и рендерер и при помощи рендерера добавляется/удаляется класс из списка классов элемента.

### Почему здесь перфоманс важен

Класс элемента может меняться после любого взаимодействия со страницей, поэтому его изменение должно произойти как можно быстрее

### Можем ли мы писать проект без этого

Да, и по возможности обходиться без этого (до версии 15.1.1) и пробовать самостоятельно вешать необходимые классы по какому-нибудь собственному условию

### Подводные камни

В старой версии этот фрагмент кода создает каждый тик новый объект, который внутри директивы проверяется KeyValueDifferом что поменялось и тд, что не эффективно\
`<some-element [ngClass]="{'class1 class2 class3' : true}">...</some-element>`

### Что влияет на перформанс в этой фиче?

Template binding issues
