gpt4 book ai didi

angular - 即使 OnPush 策略开启,什么事件也会触发变更检测?

转载 作者:太空狗 更新时间:2023-10-29 18:08:14 32 4
gpt4 key购买 nike

当我们使用默认策略时,这些家伙可以触发变更检测(当然除了输入参数):

  • 用户事件
  • 计时器
  • ajax 响应

但是。当您切换到 OnPush 策略 时,它仅由事件 触发并且不适用于计时器和 http。

所以问题是为什么它不适用于时间和 https 或者为什么它适用于事件。

最佳答案

OnPush 就是这样定义的。

它触发变化检测

  • 当接收到组件监听的 DOM 事件时
  • |async 管道接收到新事件时
  • @Input() 被变更检测更新时。
  • 当使用 ChangeDetectorRef::markForCheck
  • 明确注册要检查的下一个变化检测轮次的组件时

ChangeDetectionStrategy.Default 为 Angulars 区域内调用的每个异步回调触发更改检测(每个 DOM 甚至在 Angular 应用程序中监听,每个 Observable 事件或完成的 Promise,setTimeout,...)

关于angular - 即使 OnPush 策略开启,什么事件也会触发变更检测?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45507503/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com