如何知道函数javascript何时使用angular

时间:2015-02-02 01:38:57

标签: javascript angularjs

我的应用程序有一个按钮,用于调用控制器内的功能。 如何知道,当函数完成/完成时,使用指令?

在我的指令中执行此处理后,我将触发一个函数。

1 个答案:

答案 0 :(得分:0)

正如New Dev评论的那样,在控制器中处理它更有意义,但是如果你必须把它放在一个指令中,那么我认为你需要定义自己的ngClick指令,它包装了函数调用。这样的事情应该有效:

app.directive("ngWrapClick", function ($parse) {
  return function (scope, element, attrs) {
    var clickFn = $parse(attr.ngWrapClick);
    element.bind("click", function () {
      clickFn(scope);
      // function complete
    })
  }
});

并在按钮中使用此代替ngClick:

<button ng-wrap-click="doSomething()">

请记住,doSomething可以是异步的,并且可以在实际完成处理之前返回。在这种情况下,使用promises或回调会更合适。