2014-02-26 18 views
14

AngularJS指令的默认范围值是什么?AngularJS指令作用域的默认值是什么?

当然,这不是孤立的范围。这是真的或假的。

我无法找到有关它的任何文档。

+0

默认值是一样的在其上的指令是调用 –

+0

如果我没有给出元素的分离范围价值观的范围,这是否会创建一个新的原型继承范围?还是将它的作用域的范围作为它的范围? –

+0

@AladdinMhemed:不。如果你没有赋值,默认等价于设置'scope:false',这意味着不创建一个新的范围(本质上,它将“使用元素的范围作为它的范围”)你说) – rinogo

回答

21

“注意,默认情况下,指令不创造新的范围 - 即默认为scope: false

Understanding scopes

使用指令范围选项,您可以:

  • 创建scope: true
  • prototypically继承子作用域创建scope: {}一个孤立的范围,那么你可以将某些属性的父作用域绑定'@', '&', '='(见this question )。
  • 决定不创建新范围并使用scope: false(默认值)的父项。
+2

如果这是在他们的api文档中(当前在https://docs.angularjs.org/api/ng/service/$compile中找到)会很好。 – aaaaaa

0

默认情况下,指令共享包含控制器的作用域。 您可以指定scope:true有一个继承的范围,并获得你所要做的范围以下

scope:{ 
something1:"@", 
something2:"=" 
something3:"&" 
} 
相关问题