【发布时间】:2015-11-23 02:56:05
【问题描述】:
我有一个包含输入字段的指令/模板。
输入字段有一个 ngKeyup 和一个 ngModel。
我希望将 ngKeyup 函数传递到指令中。指令/模板中输入字段上的 ngKeyup 应该调用此函数。
这个 plunker 显示选项 1 和选项 2 http://plnkr.co/edit/kN8mitdG6pK5GNqGzYw5?p=preview
选项一最简单,部分有效,函数只是通过'='传入,指令在ngKeyUp属性中引用它
指令
ngApp.directive("searchField", ['$parse',function ($parse) {
return {
restrict: "E",
scope: {
myKeyUp: '=',
模板
<input type="text" ng-model="model" ng-keyup="myKeyUp" />
这部分工作,但 $event 对象没有传递。
在选项 2 中,指令从控制器接收函数作为 '&',尝试 $parse 并调用它。这根本不适合我,但我对 $parse 不是很熟悉。
ngKeyup 可以接收任何参数,例如ng-keyup(a,b,c,$index,$event)
一个关键点/要求是这个指令应该是相同的,即 myKeyUp 应该能够接受任何参数。
非常感谢任何帮助或指示。
谢谢 约翰
【问题讨论】:
标签: angularjs angularjs-directive