$ digest循环何时被调用?

$ digest循环何时被调用?,第1张

$ digest循环何时被调用

我认为摘要循环的描述在http://blog.bguiz.com/post/60397801810/digest-cycles-in-single-
page-apps
中是

间隔运行的代码

是非常误导的,并且说实话,当谈到Angular时,我什至会说错。引用Pawel
Kozlowski,AngularJS掌握Web应用程序开发

AngularJS不使用任何轮询机制来定期检查模型更改

为了证明没有轮询,如果您有一个模板

<p>{{state}}</p>

和控制器代码

$scope.state = 'Initial';// Deliberately *not* using $timeout here$window.setTimeout(function() {  $scope.state = 'Changed';},1000);

就像在这个监听器中一样,向用户显示的字符串将保留为

Initial
且永不更改为
Changed

如果您想知道为什么经常看到对的调用

$apply
,但并非总是如此,那可能是因为Angular附带的各种指令(例如
ngClick
ngChange
$apply
自己调用)会触发循环。直接针对本机JS事件的事件侦听器将不会执行此 *** 作,因此必须故意调用
$apply
以使所做的任何更改都反映在模板中。



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5476566.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-12
下一篇2022-12-12

发表评论

登录后才能评论

评论列表(0条)

    保存