当前位置: 首页 > 面试题库 >

给定父范围,获取Angularjs中的所有子范围

张永嘉
2023-03-14
问题内容

我想知道如何在给定父范围的情况下获取所有子范围的列表。我可以从该范围的属性中找到$ childHead,$ childTail,$
nextSibling和$$ prevSibling。

我现在使用的方法是从父级获取childHead,然后使用nextSibling获取下一个孩子,直到nextSibling为空。

有没有更好的方法?鉴于我想在所有子项上调用方法[getModel],是否又有更好的方法呢?


问题答案:

子指令使用隔离范围,因此它们具有自己的值,这些值对父指令不可见。我想从父范围访问这些值。

处理“需要访问子范围的父范围”问题的“角度方式”是将模型上移到父范围,并让子范围引用父属性/数据(而不是子范围具有自己的属性/数据)本地属性/副本)。

使用伪指令,首先在父作用域中定义一个对象数组,然后使每个孤立的子作用域使用“
=”符号(即双向数据绑定符号)访问该父作用域数组(或单个对象)。因为对象是共享对象,所以隔离的作用域将引用父对象(它们将不会获得本地副本)。现在,您对子范围属性所做的任何更改实际上都是在更改父范围属性。



 类似资料:
  • 问题内容: 如何从其父范围调用在子范围中定义的方法? http://jsfiddle.net/wUPdW/ 问题答案: 您可以从父母到孩子使用: 工作jsfiddle:http : //jsfiddle.net/wUPdW/2/ 更新 :还有另一个版本,耦合性更低,更易于测试: jsfiddle:http : //jsfiddle.net/uypo360u/

  • 问题内容: 有没有办法获取所有当前在javascript范围内的变量? 问题答案: 否。“范围内”变量由“作用域链”确定,该变量无法通过编程方式访问。 有关详细信息(很多),请查看ECMAScript(JavaScript)规范。这是指向官方页面的链接,您可以在其中下载规范规范(PDF),而这是指向官方的可链接HTML版本的链接。 根据您对Camsoft的评论进行更新 事件函数作用 域中 的变量取

  • 问题内容: 如果我有以下控制器: 读出的正确方法是什么?如果有必要定义中,也不会使它语义上不正确假设是描述相关的东西的属性,而不是? 更新: 对此进行进一步的思考,如果一个孩子有多个孩子,将会在检索上产生冲突。我的问题是,什么是访问的正确方法是从? 问题答案: AngularJS中的作用域使用原型继承,当在子作用域中查找属性时,解释器将从子对象开始查找原型链,并继续寻找父对象,直到找到该属性为止,

  • 我尝试注入$scope,然后使用,但这不起作用? 有人能提供建议吗?

  • 问题内容: 我正在写指令,并且需要注意父作用域的更改。不知道我是否正在按照首选方式执行此操作,但是它不能与以下代码一起使用: 它记录了窗口加载,但是即使更改了overlaytype,也不会再次登录。 我怎样看待变化? 编辑:这是整个指令。不确定我为什么要使用儿童镜 问题答案: 您应该在子作用域上具有 data 属性,作用域在父作用域和子作用域之间使用原型继承。 同样, $ watch 方法期望的第

  • 我有N个数字,让我们说。现在我想找出在给定范围内有多少对数字。(L和R给定)。数字对=两个数字相同。我的方法: