Angularjs ng模型的角度范围到不同范围的过滤器模型

Angularjs ng模型的角度范围到不同范围的过滤器模型,angularjs,Angularjs,正在阅读模板下的。下面的代码取自app/index.html 角度是否允许兄弟作用域的交叉可见性 作用域1中名为query的数据如何可用于作用域2中的筛选器(它是同级作用域而不是父作用域)?谢谢 //-----------范围1----------------- 搜索: //-----------范围2----------------- {{phone.name} {{phone.snippet} 有一个$scope树,从$rootScope开始。在HTML中,只有一个作用域(忽略n

正在阅读模板下的。下面的代码取自app/index.html

角度是否允许兄弟作用域的交叉可见性

作用域1中名为query的数据如何可用于作用域2中的筛选器(它是同级作用域而不是父作用域)?谢谢


//-----------范围1-----------------
搜索:
//-----------范围2-----------------
  • {{phone.name} {{phone.snippet}


有一个$scope树,从$rootScope开始。在HTML中,只有一个作用域(忽略ngRepeat,它在每次迭代中创建自己的子作用域)。因此,当用户在输入框中输入一个值时,它将绑定到与同级div位于同一范围内的查询。因此,为什么两个查询都绑定到同一范围变量,即使它们位于同级div内

打破绑定的一种方法是为输入控件引入子作用域。例如,ngController将创建从父作用域继承的子作用域。只要按下一个键,它就会在子作用域中创建一个
query
的副本。这打破了双向绑定,因为现在查询变量的两个副本存在于不同的作用域中

<div class="col-md-2" ng-controller="anyCtrl"> //-----------scope 1 -----------------
  <!--Sidebar content-->

  Search: <input ng-model="query">

</div>
/--------------范围1-----------------
搜索:
您应该可视化$scope树,并了解哪些指令将创建子作用域。还请记住,$scope变量查找(读取)是通过原型$scope继承来解决的(这意味着$scope变量的定义可能存在于$scope树的更高层)。但是$scope变量writes将写入它的直接作用域——正如我上面解释的,有时会破坏明显的绑定