hm-tap表达式不像ng-click

时间:2014-02-28 20:18:35

标签: angularjs cordova hammer.js

我正在使用angular-hammerjs库(https://github.com/kievechua/angular-hammer)和我的phonegap应用程序。我不能让hm-tap与ng-click具有相同的表达式。解释:

<a class="btn btn-lg btn-danger" ng-click="counter = counter + 1">Click me</a>
<h2>{{counter}}</h2>

完美地工作以增加计数器,但

<a class="btn btn-lg btn-danger" hm-tap="counter = counter + 1">Click me</a>
<h2>{{counter}}</h2>

不起作用。任何人都有解决方案或想法吗?

2 个答案:

答案 0 :(得分:2)

似乎hm-tap需要调用范围函数而不是直接更新范围变量。我不知道为什么,但这是我的观察。

答案 1 :(得分:1)

不确定问题是否仍然相关,但您的示例确实适用于ryan mullin's angular-hammer fork。但是,以下类型错误:

TypeError: fn.call is not a function
每次单击按钮时都会抛出

我也很惊讶,如果你提供一个没有括号的函数名,那么仍然会调用该函数。而使用ng-click,您需要添加括号,如:

ng-click="myFunction()"

对于hm-tap指令,以下内容也适用:

hm-tap="myFunction"