我刚刚开始研究 Angular2 变更检测机制。
我已经阅读了有关该主题的 Thoughram 的博客文章(关于 ZoneJS 和 Angular2 区域的文章),但仍然有 1 个术语我找不到任何定义。
这是这篇文章的摘录:
NgZone 基本上是一个分叉的区域,它扩展了它的 API 并在它的执行上下文中添加了一些额外的功能。它添加到 API 中的一件事是我们可以订阅以下一组自定义事件,因为它们是可观察的流:
onTurnStart() - 在 Angular 的事件轮转开始之前通知订阅者。每个由 Angular 处理的浏览器任务发出一次事件。
onTurnDone() - 在 Angular 的区域完成处理当前轮次以及从该轮次安排的任何微任务后立即通知订阅者。
onEventDone() - 在结束 VM 事件之前的最终 onTurnDone() 回调之后立即通知订阅者。用于测试以验证应用程序状态
我了解区域的概念并且可以分叉,我唯一的问题是VM turn
and VM event
,我找不到任何定义。
这些 VM 事件和转折是什么?它们是 ZoneJS、Angular 还是浏览器的一部分?
谢谢,阿维。