AngularJS使用$ rootScope作为数据存储

AngularJS使用$ rootScope作为数据存储,第1张

AngularJS使用$ rootScope作为数据存储

在以下引用的AngularJS
FAQ中
解决了这个问题:

有时,有些数据要对整个应用程序进行全局处理。对于这些,您 可以 像其他作用域一样 注入$ rootScope
并在其上设置值。由于作用域是从根作用域继承而来的,因此这些值将可用于附加到ng-show之类的指令的表达式,就像本地$ scope上的值一样。

似乎团队确实鼓励使用

$rootScope
这种方式,但要注意以下几点:

当然,全局状态很糟糕,您应该谨慎使用$ rootScope,就像(希望)使用任何语言的全局变量一样。特别是,不要将其用于代码,而仅用于数据。如果您想在$
rootScope上放置一个函数,最好总是将其放在可以在需要的地方注入并且更容易测试的服务中。

相反,请勿创建仅在生命中唯一目的是存储和返回数据位的服务。

这不会给

$digest
周期带来太大的负担(它实现了基本的脏检查以测试数据突变),而且这并不是一种奇怪的处理方式。

编辑:
有关性能的更多详细信息,请参见Misko(AngularJS开发人员)的关于SO的答案:数据绑定在AngularJS中如何工作? 特别注意有关性能的部分。



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

原文地址: http://outofmemory.cn/zaji/5171350.html

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

发表评论

登录后才能评论

评论列表(0条)

保存