2017-12-12 5 views
1

각도 변화 감지입니다.각도 변화 감지 : 각도 (영역) 외부입니까?

그들은 "그렇지 않으면, markForCheck 방법을 사용합니다. 구성 요소의 속성 때문에 변경 감지주기가 예정되지 않을 각도의 외부를 변경하는 경우 당신은 detectChanges 방법을 사용할 것입니다."라고

그래서 지금은 어떤 코드/코드 부분이 외부의 각도으로 간주 될지 궁금합니다.

답변

1

일반적인 응용 프로그램에서는 거의 발생하지 않는 이벤트가 거의 발생하지 않지만 발생할 수 있습니다. 좋은 예는 이미지 회전식 캐 러셀과 같이 앱에서 소비하는 타사 컨트롤입니다. 페이지의이 요소는 Angular 외부의 라이브러리에서 생성되었으므로 변경 감지를 실행하려고 할 때 Angular는 모릅니다. 예제를 계속하려면 사용자가 오른쪽 화살표를 클릭하여 슬라이드 쇼를 진행한다고 가정 해보십시오. 이 이벤트는 비 앵글 라이브러리를 통해 연결 되었기 때문에 Angular는 구성 요소를 확인하지 않습니다. 여기서 개발자는 수동으로 변경 감지주기를 실행하여 구성 요소의 모든 항목을 업데이트해야하는지 확인해야합니다.

구성 요소를 만들어 각도 변경 감지에서 "분리"할 수도 있습니다. 이유는 구성 요소가 일반적으로 변경 감지를 발생시키는 많은 수의 이벤트를 발생시킬 수 있기 때문입니다. 고전적인 예는 100ms마다 업데이트되는 주식 시세표입니다. 구성 요소가 분리되지 않은 경우 모든 이벤트는 Angular가 변경 감지주기를 수행하게합니다. 그러나 개발자가 분리 된 경우 개발자는 전략적 일 수 있으며 값이 실제로 변경된 경우에만 변경 감지주기를 수행하십시오.

+0

위대한 설명! 감사합니다 :) –