[英]When to use $rootScope on Angularjs?
如果在控制器之間共享數據的正確方法是使用工廠/服務,$ rootScope的目的是什么?
$rootScope
存在,但它可以用於邪惡 Angular中的作用域形成一個層次結構,原型繼承自樹頂部的根作用域。 通常這可以忽略,因為大多數視圖都有自己的控制器,因此也有范圍。
有時,您希望為整個應用程序提供全局數據。 對於這些,您可以像任何其他范圍一樣注入$rootScope
並在其上設置值。 由於范圍繼承自根范圍,因此這些值可用於附加到ng-show
等指令的表達式,就像本地$scope
上的值一樣。
當然,全局狀態很糟糕, 你應該謹慎使用$rootScope
,就像你希望用任何語言的全局變量一樣。 特別是,不要將它用於代碼,只用於數據。 如果您想在$rootScope
上添加一個函數,那么將它放在一個可以在需要的地方注入的服務並且更容易測試幾乎總是更好。
相反,不要創建一個服務,其唯一目的是存儲和返回數據位。
據我所知。 你可以在多個地方使用$ rootScope。
我希望這將有所幫助。
謝謝
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.