[angular] 불필요한 렌더링 최적화

Angular 어플리케이션을 개발하다 보면 불필요한 렌더링이 발생하여 성능이 저하되는 경우가 많습니다. 이러한 문제를 방지하기 위해 몇 가지 방법을 사용하여 불필요한 렌더링을 최적화할 수 있습니다.

컴포넌트의 Change Detection Strategy 설정

Angular에서 사용하는 컴포넌트의 ChangeDetectionStrategy를 설정하여 불필요한 렌더링을 최적화할 수 있습니다. 기본적으로 Angular는 컴포넌트의 변경 감지를 위해 뷰를 자주 업데이트합니다. 하지만 OnPush 전략을 사용하면 수동으로 변경을 감지하고 불필요한 렌더링을 방지할 수 있습니다.

import { Component, ChangeDetectionStrategy } from '@angular/core';

@Component({
  selector: 'app-example',
  templateUrl: './example.component.html',
  changeDetection: ChangeDetectionStrategy.OnPush
})
export class ExampleComponent {
  // 컴포넌트 코드
}

불필요한 이벤트 바인딩 제거

불필요한 이벤트 바인딩을 제거하여 렌더링 효율을 높일 수 있습니다. 예를 들어, 스크롤 또는 리사이즈 이벤트 등이 불필요하게 바인딩되어 있을 경우, 해당 이벤트 바인딩을 적절히 관리하여 렌더링을 최적화할 수 있습니다.

변화 감지 전략 최적화

어플리케이션에서 불필요한 변경 감지를 최적화하여 Angular의 렌더링 성능을 향상시킬 수 있습니다. 즉, 변경이 감지되지 않는 컴포넌트는 변경 감지 대상에서 제외함으로써 성능을 향상시킬 수 있습니다.

이러한 방법을 사용하여 Angular 어플리케이션의 렌더링 성능을 최적화할 수 있습니다.

참고 자료