【发布时间】:2014-11-27 04:15:12
【问题描述】:
我有一个共享函数,它返回我的 AngularJS 应用程序中最顶层元素(文档)的范围。
function topScope() {
return angular.element(document).scope();
}
这总是有效的,而且我总是可以访问位于应用程序内的任何子作用域(无论是在控制器还是指令内)。
这是我将使用它的示例:
topScope().$emit('pageReady');
现在我注意到 $rootScope 也以同样的方式工作。
$rootScope.$emit('pageReady');
这也有效并达到相同的效果。但是由于 $rootScope 被设计为“现成的 $scope”范围(创建的任何范围都将继承它的方法和属性),那么这是否仍然意味着它实际上是页面的最顶层范围?因此是附加到文档节点的范围对象的父级?
【问题讨论】:
-
是的,RootScope 是所有作用域的父级。
标签: angularjs