我在隔离范围内有一个名为 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/