$evalAsync 和 $applyAsync 有什么区别?我的理解是,当我从指令中使用 $evalAsync 时,表达式将在浏览器呈现之前进行计算。
举个例子,如果我想滚动到页面上的特定位置但不显示跳转到该位置,我可以使用它滚动到该位置,并且由于它在浏览器渲染之前触发,因此这个视觉错误会走吧。
但是,applyAsync 的目的是什么?什么时候使用其中一个而不是另一个是个好主意?
那个
$evalAsync()
将在当前摘要中执行
$applyAsync()
在预定的时间里。
如果您需要详细信息: Ben Nadel 或 堆叠在这里
这就是我一直在使用 $applyAsync 的目的。基本上,我将其用作安全的 $apply。您知道当摘要已经在进行中时尝试触发摘要时会出现恼人的错误吗?如果您使用 $applyAsync,您将获得另一个摘要,但它将在当前摘要周期完成时发生。
$applyAsync 也很酷,因为您可以批量处理一堆回调以在下一个摘要中触发。