javascript - 无法访问父范围的属性,但是我可以通过该属性链看到

标签 javascript angularjs

我在隔离范围内有一个名为 itemClickHandler 的属性。然后我从它继承的其他范围很少,包括由 ng-repeat 指令创建的范围。两个子作用域都不会创建隔离作用域,因此我应该能够在子作用域上访问此属性,但由于某些原因我不能。为什么? 这有效:

scope.$parent.$parent.$parent.itemClickHandler //returns value

这行不通:

scope.itemClickHandler //returns undefined

最佳答案

通常情况下,您的代码示例会起作用,但正如您自己所说,您处于一个孤立的范围内。根据定义,隔离作用域从原型(prototype)链中移除(引自 angular docs ):

Normally, a scope prototypically inherits from its parent. An isolated scope does not. See the "Directive Definition Object - scope" section for more information about isolate scopes.

关于javascript - 无法访问父范围的属性,但是我可以通过该属性链看到,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28194205/

相关文章:

javascript - ui-router 嵌套 View 和传递变量

javascript - jQuery 中 $.get 中的变量字段名称

javascript - 如何防止android表单跳过表单中的部分?

jquery - 如何从 AngularJS Controller 正确调用 jQuery

javascript - Angular js 启动模块

AngularJS:如何在模块配置期间使用 angular.service ?

javascript - 如何通过文本 [protractor] 在 ng-table 中查找特定行

javascript - 在 Firefox 中移动 SVG 元素失败

php - 如何在 javascript 和 php 之间协作

javascript - jQuery mouseleave e.toElement || e.relatedTarget 不起作用