Angular变量的默认范围?

时间:2013-11-01 07:56:07

标签: angularjs angularjs-controller

body(ng-controller='bodyController')
 .div(ng-controller='divController')
   h1 {{someVar}}

在上面的html(jade)中,someVar附加了哪个范围?至bodyControllerdivController的范围?

如何确保someVar附加bodyController? 以下代码将确保它,对吧?

function bodyController($scope){
  $scope.someVar = null;
}

我试图在html中使用body范围内$ body的变量。我想阻止divController在其范围内声明变量。

1 个答案:

答案 0 :(得分:0)

没有通过变量声明确保范围的事情。这是一种动态语言。事情不会这样。

但是通过框架设计,在Angular中,子控制器就像指令一样继承父父的范围。

所以这个

function bodyController($scope){
  $scope.foo = 'Foo';
}

function divController($scope){
  console.log($scope.foo);
}

按预期工作。

我会使用directives来做你正在做的事情。