我正在使用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>
不起作用。任何人都有解决方案或想法吗?
答案 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"