将资源从指令传递给控制器

时间:2015-06-09 16:55:02

标签: javascript angularjs

我试图通过调用视图回调中提供的方法将指令范围内的资源暴露给控制器范围。 但是参数变量是<servlet-mapping>。我错过了什么?

这是一个小提琴示例: https://jsfiddle.net/xqknpe5d/

查看

undefined

指令

<div on-my-event="doStuff(foo)"></div>

控制器

App.directive('myDirective', ['$whateverModule', function($module) {
  return {
    restrict: 'A',
    scope: {
      onMyEvent: '&'
    },
    link: function(scope, element, attrs) {          
      (scope.onMyEvent) && ( scope.onMyEvent('moo') );         
    }
  };
}]);

感谢您的帮助

1 个答案:

答案 0 :(得分:2)

在指令的link函数中调用函数onMyEvent。您必须将名称为参数('foo')的对象作为键发送,'moo'作为值发送。

link: function(scope, element, attrs) {          
        (scope.onMyEvent) && ( scope.onMyEvent({foo: 'moo'}) );         
    }

Read more about & binding here