【发布时间】:2012-09-29 01:12:20
【问题描述】:
我想知道如何获取给定父作用域的所有子作用域的列表。我可以从范围的属性中找到 $$childHead、$$childTail、$$nextSibling 和 $$prevSibling。
我现在使用的方法是从父级获取 childHead,然后使用 nextSibling 获取下一个子级,直到 nextSibling 为空。
有没有更好的方法? 鉴于我想对所有孩子调用方法 [getModel],还有更好的方法吗?
【问题讨论】:
-
您不应该需要访问子作用域。即使您想在父范围内发生更改时对子范围进行更改,您也不应该直接访问它们。如果你能提供一个更具体的例子来说明你想要达到的目标,你可能会得到更好的答案。
-
嗨@ganaraj,我使用的指令和一个指令可以以父子的方式引用另一个指令。子指令使用隔离作用域,并且在这种情况下具有自己的值,这些值对父级不可见。我想从父作用域访问这些值。
-
该程序的最终目标是什么?
-
我有许多指令,每个指令都使用隔离范围,并且有一个属性名称“模型”。给定父级,我想获取每个子级范围,然后在其上调用 getModel() 方法。我现在可以工作了。我只是对做同样事情的其他或更好的方法感兴趣。
标签: angularjs angularjs-scope parent-child enumeration