1

我有一个指令,然后作为其模板的一部分使用内部指令。当我的内部指令中发生某件事时,我想在父指令的范围内调用一个函数。我认为scope指令中属性的“&”是针对这种情况的。但是,当我尝试调用该函数时,父指令中的函数永远不会被调用。在此处查看 jsFiddle:http: //jsfiddle.net/hdm3Q/

调试的时候发现$parentinner指令的作用域和父指令的作用域不一样。直到我这样做scope.$parent.$parent了,我才找到了外部指令的范围。那么,为什么这里有这个额外的范围?如何在我的父范围内调用该函数。我真的很想在这些指令中有独立的范围。对此的任何帮助将不胜感激。

4

1 回答 1

1

parentFunction和之间的名称翻译parent-function正在发生。

在您的指令中,您应该使用名称的连字符版本。此规则适用于所有 angular html 属性。

<div child parent-function="parentFunction()"></div>

工作小提琴:http: //jsfiddle.net/p2dtC/

于 2012-10-25T23:05:03.383 回答