2013-04-30 53 views
3

我是AngularJS的新手。我正在编写一个接受函数名称的指令(因为它偶尔会改变),然后在模板中将它设置为ng-click函数来调用控制器上的函数。但是,它似乎并没有开火,我相信我正在做一些完全错误的事情,所以任何帮助都会很棒!Angular JS:将函数传递到指令模板不起作用

我想在我的指令中 fire-fn="callThis($index)", 通过得到注入模板的HTML标记来调用MyCtrl$scope.callThis

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

感谢您的帮助!

回答

10

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

退房在http://plnkr.co/edit/VJNOyx0sBRo0QrcJLsOB?p=preview

方式“&”通过属性的工作版本(!与指数)为奇数,从角文档:

通常它需要从孤立的传递数据通过表达式和父范围,可以通过将局部变量名称和值的映射传递到表达式包装函数fn来完成。例如,如果表达式是增量(金额),那么我们可以通过调用localFn作为localFn({amount:22})来指定金额值。

+0

谢谢,正是我在找的东西! – changus 2013-05-01 17:35:45

相关问题