은 2 각도 앞서-의-시간 (AOT) 나는이 같은 부모 구성 요소 및 하위 구성 요소를 가지고 컴파일 구성 요소 파괴하기로 결정 않는 경우 :정확하게 각도가에서
<div>
<h1>I am a parent</h1>
<myChild *ngIf="showChild"></myChild>
</div>
내가 알고에게 하위 템플릿은 DOM에 동적으로 삽입됩니다. 내 질문은 "showChild"가 false로 평가 될 때 Angular가 자식 구성 요소를 정확히 파괴 할 때입니까? 아니면 Angular가 하위 구성 요소를 전혀 파기하지 않습니까? 그 시간 Angular는 "onDestroy()"메서드를 호출합니까? 여기
은 (만약 내가 잘못 나 수정하시기 바랍니다) 앞에서 친구로 만든 문이다 이각도는 구성 요소가 더 이상 DOM에 필요한 볼 수 없습니다, 그것은 구성 요소를 파괴 할 것이다 . 각도 실행 탐지를 변경하고 업데이트하는
NgIf
지침의ngIf
입력에 결합하면
하위 구성 요소가 파괴 된 경우 각도가 메모리 사용 공간을 어떻게 처리합니까? onDestroy()에서 이벤트 구독을 취소하고 분리했다고 가정 할 때 가비지 수집은 얼마나 깨끗합니까? – gye
각도는 가비지 수집과 관련이 없습니다. 구성 요소에 대한 참조가 없으면 JS VM은 모든 관련 클래스를 수집합니다. Angular를 사용하면 구성 요소가 파괴 된 후에 참조 자체가 유지되지 않습니다. –