본문 바로가기

Web + APP/Angular

constructor과 ngOnInit의 차이는 ?

반응형
SMALL

안녕하세요. 꼬동입니다.

 

오늘은 constructor과 ngOnInit의 차이를 설명드리려고 합니다.


간단하지만 명확하게 설명을 할 수 있냐라고 제목과 같은 질문을 했을 때 저희는 아마 어버버하게 될 것입니다.

 

그 뭐시냐... 그 머리로는 아는데... 그거 잇잖아여...

ES6 클래스 문법의 표준으로 클래스에서 인스턴스를 생성하는 시점에 호출되는 메서드입니다.

 

constructor가 호출될 땐 앵귤러가 초기화 작업을 수행하기 전이므로 컴포넌트의 속성 가운데 템플릿과 바인딩한 속성이나 부모 컴포넌트로부터 전달받은 속성 등의 초기화를 보장하지 않습니다. @Input으로 넘겨 받은 데이터가 되겠죠.

 

그렇기 때문에 constructor에는 순수하게 객체의 생성 시점에 필요한 간단한 초기화 로직만 넣도록 합시다.

 

API 호출이나 앵귤러 제공하는 기능은 반드시 ngOnInit 호출 이후부터 이용할 수 있습니다.

 

ngOnDestroy의 경우엔 컴포넌트가 뷰에서 제거되기 직전에 호출되는데요. ngOnDsetroy 메서드는 주로 인스턴스가 소멸되기 전에 해야하는 일을 구현합니다.

 

뭐, 구독 해제 이런게 있겠죠.


이거 제가 아마 이 전에 글을 적었던거 같은데 생각나서 다시 적어봅니다.

 

원래 개발은 반복의 반복이였더랬죠.


이상 constructor과 ngOnInit의 차이는 ? 였습니다. ^_^

반응형
LIST

'Web + APP > Angular' 카테고리의 다른 글

Angular 더 빠르게 - On Push 두 번째 이야기  (0) 2022.03.27
Angular 더 빠르게 - On Push CD / Immutability  (0) 2022.03.23
NGRX - Selectors  (0) 2021.11.26
Normalizing State Shape  (0) 2021.11.08
NGRX - Reducers  (0) 2021.10.31