49be32c931
`AsyncPipe` only uses `WrappedValue` when the latest value from the `Promise` or `Observable` is different from the previous one. This is already enough to trigger change detection so the `WrappedValue` is not necessary. Fixes #29927 BREAKING CHANGE: This change could result in ExpressionChangedAfterItHasBeenChecked errors that were not detected before. The error could previously have gone undetected because two WrappedValues are considered "equal" in all cases for the purposes of the check, even if their respective unwrapped values are not. Additionally, `[val]=(observable | async).someProperty` will no longer trigger change detection if the value of `someProperty` is identical to the value in the previous emit. If you need to force change detection, either update the binding to use an object whose reference changes or subscribe to the observable and call markForCheck as needed. PR Close #36633 |
||
---|---|---|
.. | ||
async_pipe_spec.ts | ||
case_conversion_pipes_spec.ts | ||
date_pipe_spec.ts | ||
i18n_plural_pipe_spec.ts | ||
i18n_select_pipe_spec.ts | ||
json_pipe_spec.ts | ||
keyvalue_pipe_spec.ts | ||
number_pipe_spec.ts | ||
slice_pipe_spec.ts |