我想知道这个:
我们应该在$rootScope
中分配常用*变量,还是应该在最顶层的父ng-controller
中声明它们?
谢谢
答案 0 :(得分:3)
这个问题与Global variables in AngularJS
非常相似一般来说,您应该尽量避免将事物放在$rootScope
上,因为AngularJS等同于全局window
范围。由于$rootScope
可以在任何地方注入(服务,指令等),因此在根范围内声明的变量是真正全局的。
如果你有一个最顶级的应用程序级别的控制器并且存在变量,那么我会赞成这个,而不是污染$rootScope
。作为一般经验法则,我们应该使用限制性最强/较低级别的范围。
不要忘记服务可能就是答案。