mirror of
https://github.com/angular/angular.git
synced 2026-09-14 13:54:52 +08:00
cae0d3167d
Because exhaustive checks traverse the whole tree regardless of the dirty state, it breaks some expectations around how change detection should be running. When a view has transplanted views, it unconditionally marks all ancestors for traversal, assuming this is fine because the loop will just traverse them and find nothing dirty. However, exhaustive checkNoChanages actually refreshes everything during traversal. This update ensures the exhaustive check only does a single pass and also prevents some unnecessary marking of transplanted views for refresh since we know they're going to be reached. PR Close #55839