【发布时间】:2018-08-15 07:03:17
【问题描述】:
对于上下文:
我有 Angular 5 应用,其启动周期涉及:
- 对服务器 API 的 Http 调用(检查令牌、检索用户数据)
- 本地存储 (db) 调用
- 相当多的初始化过程来准备和转换数据
我决定使用调试器逐步完成整个启动周期,并意识到 Angular 在启动周期中会触发对许多进程的更改检测。
现在我想知道(问题):考虑到应用程序初始化之前的所有活动只是为了准备应用程序使用的数据 - 我是否应该在应用程序初始化周期中分离更改检测并在初始化结束后重新附加更改检测然后触发是吗?
基本上是想了解这是否会节省加载时间和处理,还是一个坏主意?
更新:由于我浏览了很多关于这个主题的文章,我意识到可能会改变我提出这个问题的方式的其他事实。
更改检测与“视图”相关 - 如果其中没有模板和绑定 - 甚至可能不值得尝试对此进行优化
对于或多或少严重的应用程序,切换到 onPush CD 策略是一种常见的做法,这也有助于消除此处进行额外改进的需要。
-
最后一件事 - 今天晚些时候我仍然会尝试以下实验:
- 使用分离的 CDR 加载 Ionic/Angular 应用程序,然后在初始化阶段结束后重新连接
- 正常加载同一个应用
- 然后看看什么是增量(如果有的话)
【问题讨论】:
标签: angular ionic3 angular2-changedetection