Вчера возник спор
И так, есть два вариант байнда, например класса:
1) есть массив данных и класс берется оттуда
div [class]="elelent.class"
elements: {
id: number;
class: string;
}
2) Отправляем в байнд класса метод getClass()
div [class]="getClass(id)"
getClass(id: number): string {}
Я считаю, что второй вариант (с методом в байнде) не приемлем, потому что заметил, что при любом скролле или событии в браузере он каждый раз вызывается, что плохо влияет на производительность фронта
И я стал искать, а можно ли вообще и рекомендуется ли байндить что то подобным образом, в документации я по этому поводу ничего не нашел, более того нашел то, что так можно делать в разделе best-practices....
И я не понимаю почему оно так устроено и почему так вообще делать можно, если оно так пагубно влияет на производительность.
Вo VUE кстати есть computed свойства, которые как раз дают желаемые эффект. Перерендерится только в том случае, если что то изменилось, вообщем то хотелось бы на ангуляре добиться подобного