e32b6256ce
Previous implementation would fire changes `QueryList.changes.subscribe` whenever the `QueryList` was recomputed. This resulted in artificially high number of change notifications, as it is possible that recomputing `QueryList` results in the same list. When the `QueryList` gets recomputed is an implementation detail and it should not be the thing which determines how often change event should fire. This change introduces a new `emitDistinctChangesOnly` option for `ContentChildren` and `ViewChildren`. ``` export class QueryCompWithStrictChangeEmitParent { @ContentChildren('foo', { // This option will become the default in the future emitDistinctChangesOnly: true, }) foos!: QueryList<any>; } ``` PR Close #40091 |
||
---|---|---|
.. | ||
animation_world | ||
core_all | ||
cyclic_import | ||
forms | ||
hello_world | ||
hello_world_i18n | ||
hello_world_r2 | ||
injection | ||
router | ||
todo | ||
todo_i18n | ||
todo_r2 | ||
util | ||
README.md |
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 commands:
yarn bazel run --config=ivy //packages/core/test/bundling/injection:symbol_test.accept
yarn bazel run --config=ivy //packages/core/test/bundling/cyclic_import:symbol_test.accept
yarn bazel run --config=ivy //packages/core/test/bundling/forms:symbol_test.accept
yarn bazel run --config=ivy //packages/core/test/bundling/hello_world:symbol_test.accept
yarn bazel run --config=ivy //packages/core/test/bundling/router:symbol_test.accept
yarn bazel run --config=ivy //packages/core/test/bundling/todo:symbol_test.accept
Running all symbol tests
To run all symbol tests with one command, you can use the following scripts:
yarn run symbol-extractor:check
yarn run symbol-extractor:update