Ser*_*gey 5 angular2-changedetection angular
我正在尝试优化 angular 应用程序中代码的性能。
我知道我可以runOutsideAngular编写一些代码,以免在每个代码运行或事件上引起更改检测。
但是,我runOutsideAngular在使用OnPush变更检测策略时是否需要使用?(对于听众等)
我想我现在有了答案。
在我看来,这取决于应用程序的外观。
如果它有很多未优化的组件,并且异步操作将触发很多次,或者它是一个事件侦听器,那么它必须在runOutsideAngular
但是,如果应用程序主要是使用具有OnPush策略的组件构建的,或者只是AppComponent使用OnPush(因为整个树将使用OnPush在顶级组件上定义的策略,不可逆地为整个应用程序定义此策略),那么您可以省略使用作为runOutsideAngular更改的触发器检测不会影响任何事情
另外,我认为完全优化的应用程序有一个选项OnPush可以禁用区域中的所有事件补丁,因此不需要,runOutsideAngular因为所有异步事件都没有触发 NgZone 的点。
| 归档时间: |
|
| 查看次数: |
292 次 |
| 最近记录: |