相关疑难解决方法(0)

markForCheck()和detectChanges()之间有什么区别

ChangeDetectorRef.markForCheck()和之间有什么区别ChangeDetectorRef.detectChanges()

我只在SO上找到了关于NgZone.run()这两个函数之间的差异的信息,但不是这两个函数之间的区别.

对于仅提及文档的答案,请说明一些实际场景,以选择其中一个.

angular2-changedetection angular

146
推荐指数
4
解决办法
5万
查看次数

角度2变化检测和ChangeDetectionStrategy.OnPush

我正试图理解这个ChangeDetectionStrategy.OnPush机制.

我从读数中得到的结论是,通过比较旧值和新值来进行变化检测.如果对象引用未更改,则该比较将返回false.

然而,似乎某些情况下绕过了"规则".你能解释一下这一切是如何运作的吗?

zonejs angular

28
推荐指数
3
解决办法
3万
查看次数

更改检测问题 - 为什么当它与On Push相同的对象引用时会发生变化

我认为在讨论之后我非常清楚角度变化检测是如何工作的:为什么当[值]改变时,变化检测不会发生在这里?

但看看这个插件:https://plnkr.co/edit/jb2k7U3TfV7qX2x1fV4X ? p = preview

@Component({
selector: 'simple',
  template: `
    <div (click)="onClick()">
      {{myData[0].name}}
    </div>
  `,
  changeDetection: ChangeDetectionStrategy.OnPush
})
export class Simple {
  public @Input() myData;
  constructor() {
  }
  public onClick() {

  }
}
Run Code Online (Sandbox Code Playgroud)

点击a,它改为c

据我所知,click事件触发了应用程序级别的更改检测,但[myData] ="testData"仍然引用同一个对象,我使用On Push on Simple,为什么会更改?

angular

8
推荐指数
1
解决办法
1171
查看次数

什么是Angular2中的ChangeDetectionStrategy以及何时使用OnPush Vs Default?

我碰巧ChangeDetectionStrategyngrx文档中看到了.它使用OnPush.

什么是ChangeDetectionStrategyAngular2,以及何时使用OnPush Vs Default?

angular

7
推荐指数
4
解决办法
6910
查看次数

标签 统计

angular ×4

angular2-changedetection ×1

zonejs ×1