TGViewer
Frontender Libs - обзор библиотек JS / CSS Frontender Libs - обзор библиотек JS / CSS @swebdev · 7.42K subscribers
Post #3125 1.38K
Оптимизация производительности в Angular

ChangeDetectionStrategy.OnPush работает по принципу, что изменения в компоненте должны происходить только в следующих случаях:

1. Изменение входного свойства (@Input).
2. Событие внутри компонента (например, клик по кнопке).
3. Использование асинхронного пайпа для подписки на Observable или Promise.

Для использования этой стратегии, в декораторе компонента нужно задать свойство changeDetection:
import { Component, ChangeDetectionStrategy, Input } from '@angular/core';

@Component({
selector: 'app-user',
template: `
<div>
<p>{{ user.name }}</p>
</div>
`,
changeDetection: ChangeDetectionStrategy.OnPush
})
export class UserComponent {
@Input() user: { name: string };
}

В примере компонент UserComponent будет проверять изменения только тогда, когда свойство user изменяется. Это значит, что если родительский компонент обновляется, но свойство user остается неизменным, UserComponent не будет проходить процесс проверки изменений.

👉 @sWebDev
  • 👍 5
More from @swebdev
  1. Oct 15, 2026АЙТИШНИКИ БЕСПЛАТНОЕ ОБУЧЕНИЕ Проект «Terminal» стал крупнейшей библиотекой бесплатного об…
  2. Oct 14, 2026🔴В 2025 году Россияне заработали 5,3 млрд рублей на арбитраже криптовалют По данным Минфи…
  3. Sep 26, 2026🤖 AI для фронтенд-разработчика: собираем инструменты на Podlodka Frontend Crew AI-инструм…
  4. Mar 23, 2026👉 @sWebDev | #книги
  5. Mar 23, 2026JavaScript для профессиональных веб-разработчиков Автор доступно объясняет сложные концепц…
  6. Jan 27, 2026Tabulator Библиотека, которая превращает HTML-таблицы или данные из JavaScript в интеракти…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →