mirror of
https://github.com/angular/angular
synced 2026-05-24 09:28:37 +00:00
This change treats all views attached to `ApplicationRef` as `OnPush`, meaning that they have to be explicitly marked for check in order to be refreshed when a tick happens. This prevents "accidentally" refreshing views which have `Default` change detection as a side effect of running change detection from an unrelated notification. In addition, this change helps us achieve one of the big goals of the project: that we can provide a testing experience which gives developers more confidence that a component is zoneless-compatible. Because `ComponentFixture` change detection is run through `ApplicationRef` instead of `ChangeDetectorRef` when zoneless is enabled, this ensures that the component under test has correctly been marked for check in order to be updated. Without this, calling `ComponentFixture.detectChanges` would allow a test to _force_ change detection on a view when Angular would have otherwise not known that it needed to be updated. Calling `ComponentFixture.detectChanges` on a component which is not marked for check will now omit refreshing component view. PR Close #55099 |
||
|---|---|---|
| .. | ||
| animation_world | ||
| animations | ||
| animations-standalone | ||
| core_all | ||
| cyclic_import | ||
| defer | ||
| forms_reactive | ||
| forms_template_driven | ||
| hello_world | ||
| hello_world_i18n | ||
| hydration | ||
| image-directive | ||
| injection | ||
| router | ||
| standalone_bootstrap | ||
| todo | ||
| todo_i18n | ||
| README.md | ||
Bundle
js_expected_symbol_test
This folder contains tests which assert that most of the code is tree shaken away. This is asserted by keeping gold files of all symbols which are expected to be retained. When doing renaming it is often necessary to update the gold files; to do so use these scripts:
yarn run symbol-extractor:check
yarn run symbol-extractor:update