You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The problem here is work and configurableBehaviour depend on each other, the compositin of work is done outside they rely on the environment. resetContextObserver and updateViewContextObserver is related to the class it is used in.
Based on this implementation configurable strategies are not possible.
This strategy is the drop-in replacement for Angular's built-in async pipe.
This is the only strategy that does not also work in zone-less environments.
UPDATE the coalescing stuff is irrelevant
Problem
In the alpha release, the optimization should be opt-in.
Also, the implementation needs a way to change the strategy in
CdAware
.Actual
Usage
The problem here is
work
andconfigurableBehaviour
depend on each other, the compositin of work is done outside they rely on the environment.resetContextObserver
andupdateViewContextObserver
is related to the class it is used in.Based on this implementation configurable strategies are not possible.
Solution
Strategy Utils
Idle Strategy
This strategy is the drop-in replacement for Angular's built-in
async
pipe.This is the only strategy that does not also work in zone-less environments.
Optimistic1 Strategy (Just an example)
New CdAware
New Usage
New Internals
This enables us to have configurable strategies and also move the code related to configuration into
CdAware
.Todos
CdAware
to take strategiesPushPipe
and LetDirective` to initialize and provide strategiesrenderChanges
operatorhasZone
lookup directly the windowhasZone
CdAware
PushPipe
LetDirective
Related issues #2441
PR without tests is ready and will be pushed after #2456 is merged and #2442 are merged
If accepted, I would be willing to submit a PR for this feature
[x] Yes (Assistance is provided if you need help submitting a pull request)
[ ] No
The text was updated successfully, but these errors were encountered: