ChangeDetectorRef.markForCheck()和之间有什么区别ChangeDetectorRef.detectChanges()?
我只在SO上找到了关于NgZone.run()这两个函数之间的差异的信息,但不是这两个函数之间的区别.
对于仅提及文档的答案,请说明一些实际场景,以选择其中一个.
假设我有一个像这样的组件结构:
AppComponent
HeaderComponent
ContentComponent
TodosComponent
TodoComponent
Run Code Online (Sandbox Code Playgroud)
如果我设置HeaderComponent的changeDetection到ChangeDetectionStrategy.OnPush和改变TodoComponent,仍然HeaderComponent的东西ngDoCheck(),ngAfterViewChecked()和ngAfterContentChecked()被触发.
我错过了什么?无论如何都会触发ngDoCheck吗?如果是,如何确定ChangeDetection是否检查了组件?