javascript - $interval 的 invokeApply 参数不会改变任何东西

标签 javascript angularjs angularjs-scope

来自 Angular documentation $interval 服务:

invokeApply (optional) boolean: If set to false skips model dirty checking, otherwise will invoke fn within the $apply block.

这可以让我们得出结论,如果我将 invokeApply 设置为 false,则不会调用 $rootScope.$apply。

但是,从 $interval 的源码中我了解到 deferred.notify 被称为每个 tick,这是有道理的。没有的是,在 deferred.notify 执行期间 $rootScope.$evalAsync 被调用,它按顺序调用 $rootScope.$digest。所以所有脏检查仍然会发生。我在这里遗漏了什么吗?

最佳答案

Bug 已经提交!

https://github.com/angular/angular.js/pull/5903

你什么都不缺

关于javascript - $interval 的 invokeApply 参数不会改变任何东西,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23200004/

相关文章:

javascript - 菜单栏 class=active bootstrap 主题无法正常工作

javascript - 两个输入数字字段的组合最大值和最小值

angularjs - 使用 Angular.js 从 Web 服务获取数据

javascript - Angular 工厂服务问题

javascript - 当用户选择下拉菜单时触发函数

javascript - 替换双 http ://or https://

javascript - 使用 p5.js 将 Leap Motion 的跟踪数据保存到 .csv

javascript - AngularJS 在更改时更新 ng-init

javascript - AngularJs:$http.post总是返回404错误

javascript - 使用 AngularJs 将 JSON 数组值解析为文本字符串