我在使用angular-js时调用phonegap的notification.confirm。
我的代码为:
ng-click= func(item)
$scope.func = function(item) {
navigator.notification.confirm('Delete?', func2(item));
}
function func2 (item) {
console.log("Ohk call");
}
我希望只有当用户按下确认框上的确认按钮时才会调用func2。但是,只要通知出现而没有点击任何按钮就会调用它。 如何解决这个问题?
答案 0 :(得分:9)
这是正确的答案:
$scope.func= function (item) {
navigator.notification.confirm('Delete?', function(button) {
if ( button == 1 ) {
func2(item);
}
});
};
按钮的值是1/2的基于哪个按钮,单击“确认”/“取消”。在我的情况下,'confirm'按钮的值为1,因此等式检查。
答案 1 :(得分:2)
那是因为你已经在func中调用了函数func2。你只需要将一个函数作为参数传递,而不是调用它:
$scope.func = function(item) {
navigator.notification.confirm('Delete?', function() {
func2(item)
});
}
这样,只有在确认通知时才会调用该函数。