我的应用程序有一个按钮,用于调用控制器内的功能。 如何知道,当函数完成/完成时,使用指令?
在我的指令中执行此处理后,我将触发一个函数。
答案 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或回调会更合适。