2016-03-01 32 views
-2

我想知道是否有可能使ngClick采取两种不同的功能,具体取决于用户点击此特定的点击次数ngClick如何使用ngClick根据点击次数执行不同的功能?

我在考虑应用一些模数逻辑,但是我找不到任何资源。

谢谢!

+2

为什么不跟踪点击控制器/指令数,从'ngClick'调用一个函数,并决定在那个内部调用哪个函数?这是更清洁和简单 – Rhumborl

回答

4

你可以做这样的事情:

HTML:

<button ng-click="doFunction()">Click me!</button> 

的Javascript:

angular.module('myApp', []).controller('testCtrl', ['$scope', function($scope) { 
    var counter = 0; 

    $scope.doFunction = function() { 
     if(counter % 2 === 0) 
      console.log('Do func a'); 
     else 
      console.log('Do func b'); 

     counter++; 
    } 
}]); 
+0

是的,我正在实施这种方法,但不知何故没有发现它是'角度方式' – uksz

0

我不认为这是正确的ngClick直接这样做。如果你想用基于点击次数的逻辑创建一个函数,那么可能应该使用条件在函数本身中处理逻辑。

例如,你可以有这样的HTML:

<a ng-click="newClick()">Click!</a> 

有了这个角:

$scope.newClick =() => { 
    if(numberOfClicks whatever) 
    // Some logic 
    else if(numberOfClicks whatever) 
    //Some other logic 
}; 
相关问题