0

我有一个角度应用程序,在不同的变量中有 5000 个数组值。在整个项目的 5 个控制器中,我需要跨 3 个控制器的相同值。现在我正在使用工厂来保存这些数据。$rootScope 是更有效的方法还是当前方法更好。

4

2 回答 2

1

$rootScope 是所有作用域的父级,因此在那里公开的值将在所有模板和控制器中可见。使用 $rootScope 非常容易,因为您可以简单地将其注入任何控制器并更改此范围内的值。它可能很方便,但存在全局变量的所有问题。

服务是可以注入任何控制器并在控制器范围内公开它们的值的单例。作为单例的服务仍然是“全球性的”,但您可以更好地控制它们的使用和暴露位置。

请参阅问题 - AngularJS 中的全局变量

于 2016-06-17T05:29:02.910 回答
0

$rootscope 根本不是一个好的选择。最好使用工厂进行数据共享。

于 2016-06-17T05:27:04.067 回答