gpt4 book ai didi

angularjs - 在 $rootScope 上运行 $apply 与任何其他范围

转载 作者:行者123 更新时间:2023-12-03 07:38:21 25 4
gpt4 key购买 nike

$apply 函数可以在任何作用域上运行,包括 $rootScope

在某些情况下,如果我在本地作用域上运行它,或者在我的 $rootScope 上运行它,会有什么不同吗?

我这么问是因为我想创建一个辅助函数,将给定函数包装在 $apply 中。为此,我总是需要传递一个作用域,这 A) 很烦人,B) 不容易,因为我不一定有本地作用域。

我希望始终让我的辅助函数在 $rootScope 上调用 $apply,但如果这样做存在风险,则不这样做。

最佳答案

在任何作用域上运行 $apply 始终会生成 $rootscope.$digest。唯一可能产生影响的情况是当您提供表达式作为 $apply 的参数时。该表达式将在当前作用域(相对于 $rootScope)进行计算,但之后$rootscope.$digest总是被调用。

源码很清晰:rootScope.js

底线:如果您不带参数调用 $apply,则没有区别。

关于angularjs - 在 $rootScope 上运行 $apply 与任何其他范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17868889/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com