Angular JS:将函数传递给指令模板不起作用

cha*_*gus 3 angularjs angularjs-directive

我是AngularJS的新手.我正在写一个带有函数名的指令(因为这会偶尔改变),然后我将它设置为ng-click模板中的函数来调用控制器上的函数.但是,它似乎没有被解雇,我确信我做的事情完全错了所以任何帮助都会很棒!

我希望 fire-fn="callThis($index)" 在我的指令中,通过注入模板的html标记来调用$scope.callThison MyCtrl.

代码在这里:http: //plnkr.co/edit/epMfDwZILgJ5W9qIIPgr?p=preview

谢谢您的帮助!

Jmr*_*Jmr 10

您需要删除链接函数中发生的'$ parent'内容,并在指令中调用它ng-click="fireFn()"而不是使用{{}}.

查看http://plnkr.co/edit/VJNOyx0sBRo0QrcJLsOB?p=preview上的工作版本(带索引!)

'&'传递属性的方式很奇怪,来自Angular文档:

通常需要通过表达式将数据从隔离范围传递到父范围,这可以通过将局部变量名称和值的映射传递到表达式包装器fn来完成.例如,如果表达式是increment(amount),那么我们可以通过将localFn称为localFn({amount:22})来指定金额值.