Javascript 我的插件中的Successcallback和Errorcallback
嗨,我正在尝试调用插件中的Successcallback和我的Errorcallback。我使用的是爱奥尼亚v1,它似乎显示了所有成功和错误的控制台 这是我使用的插件Javascript 我的插件中的Successcallback和Errorcallback,javascript,angularjs,ionic-framework,Javascript,Angularjs,Ionic Framework,嗨,我正在尝试调用插件中的Successcallback和我的Errorcallback。我使用的是爱奥尼亚v1,它似乎显示了所有成功和错误的控制台 这是我使用的插件 var exec = require('cordova/exec'); var cordova = require('cordova'); var triangle = { initialize: function(applicationId, accessKey, secretKey, successCallback
var exec = require('cordova/exec');
var cordova = require('cordova');
var triangle = {
initialize: function(applicationId, accessKey, secretKey, successCallback, errorCallback) {
// Define document events used by the API
cordova.addDocumentEventHandler('ontaperror');
cordova.addDocumentEventHandler('ontapsuccess');
cordova.addDocumentEventHandler('ontapdetect');
// Call the Android side to initialize the Triangle session
exec(successCallback, errorCallback, "Triangle", "initialize", [applicationId, accessKey, secretKey]);
}
}
module.exports = triangle;
这是在我的控制器中调用成功和错误回调
document.addEventListener('deviceready', scanCreditCard, false);
function scanCreditCard() {
navigator.triangle.initialize(
"My Application ID", // application ID
"Access Key", // access key
"SecretKey", // secret key
succcessCallack(),
errorCallback()
);
};
function succcessCallack() {
console.log("Ready to scan")
// Subscribe to events that the Triangle APIs raise
document.addEventListener('ontaperror', onTapError(), false);
document.addEventListener('ontapdetect', onTapDetect(), false);
document.addEventListener('ontapsuccess', onNewCard(), false);
}
function errorCallback(message) {
console.log("there was an error initializing the Triangle APIs");
console.error(message);
alert("Error")
}
function onNewCard(card) {
console.log("Scanned card successfully.");
// Display basic card information to the user
// various other properties such as cardholderName,
// activationDate, expiryDate, cardPreferredName, and encryptedAccountNumber
// may be available.
var dataToShow = card.cardBrand;
if (card.cardholderName != undefined) {
dataToShow += "\n" + card.cardholderName;
}
dataToShow += "\n" + card.lastFourDigits;
alert(dataToShow);
}
function onTapDetect() {
console.log("Detected new tap.");
}
function onTapError(error) {
console.log("Error processing contactless card.");
console.error(error);
}
按名称引用函数时,不需要包含括号。括号表示执行函数并使用其返回值
navigator.triangle.initialize(
"My Application ID",
"Access Key",
"SecretKey",
succcessCallack, // remove ()
errorCallback // remove ()
);