mirror of
https://github.com/angular/angular
synced 2026-05-24 09:28:37 +00:00
This patch is a final major refactor in styling Angular. This PR includes three main fixes: All temporary state taht is persisted between template style/class application and style/class application in host bindings is now removed. Removes the styling() and stylingApply() instructions. Introduces a "direct apply" mode that is used apply prop-based style/class in the event that there are no map-based bindings as well as property collisions. PR Close #32259 PR Close #32591 |
||
|---|---|---|
| .. | ||
| element_text_create | ||
| interpolation | ||
| listeners | ||
| map_based_style_and_class_bindings | ||
| noop_change_detection | ||
| property_binding | ||
| property_binding_update | ||
| style_and_class_bindings | ||
| style_binding | ||
| BUILD.bazel | ||
| micro_bench.ts | ||
| noop_renderer.ts | ||
| README.md | ||
| setup.ts | ||
Build
yarn bazel build //packages/core/test/render3/perf:{name}.min_debug.es2015.js --define=compile=aot
Run
node dist/bin/packages/core/test/render3/perf/{name}.min_debug.es2015.js
Profile
node --no-turbo-inlining --inspect-brk dist/bin/packages/core/test/render3/perf/{name}.min_debug.es2015.js
then connect with a debugger (the --inspect-brk option will make sure that benchmark execution doesn't start until a debugger is connected and the code execution is manually resumed).
The actual benchmark code has calls that will start (console.profile) and stop (console.profileEnd) a profiling session.
Notes
In all the above commands {name} should be replaced with the actual benchmark (folder) name, ex.:
- build:
yarn bazel build //packages/core/test/render3/perf:noop_change_detection.min_debug.es2015.js --define=compile=aot - run:
time node dist/bin/packages/core/test/render3/perf/noop_change_detection.min_debug.es2015.js - profile:
node --no-turbo-inlining --inspect-brk dist/bin/packages/core/test/render3/perf/noop_change_detection.min_debug.es2015.js profile