gpt4 book ai didi

angularjs - 何时在 Angularjs 上使用 $rootScope?

转载 作者:行者123 更新时间:2023-12-04 13:37:41 25 4
gpt4 key购买 nike

如果在 Controller 之间共享数据的正确方法是使用工厂/服务,那么 $rootScope 的目的是什么?

最佳答案

$rootScope存在,但可以用来作恶

Angular 中的作用域形成一个层次结构,原型(prototype)继承自树顶部的根作用域。通常可以忽略这一点,因为大多数 View 都有自己的 Controller ,因此也有自己的范围。

有时,您想让某些数据对整个应用程序具有全局性。对于这些,你可以注入(inject) $rootScope并像任何其他范围一样在其上设置值。由于作用域从根作用域继承,这些值将可用于附加到指令的表达式,如 ng-show就像您本地的值 $scope .

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

相反,不要创建一个生活中唯一目的是存储和返回数据位的服务。

-- AngularJS FAQ

关于angularjs - 何时在 Angularjs 上使用 $rootScope?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35689853/

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