我有一个要集成nativescript-paytm插件的nativescript-vue应用程序,我在click事件上创建了一个方法:payNow()
,其中包含Paytm
的所有必要详细信息,如下所示:在Readme.md/documentation/demo应用程序中进行了说明。
import {
Paytm,
Order,
TransactionCallback,
IOSCallback
} from "@nstudio/nativescript-paytm";
const paytm = new Paytm()
methods: {
payNow() {
paytm.setIOSCallbacks({
didFinishedResponse: function(response) {
console.log(response);
},
didCancelTransaction: function() {
console.log("User cancelled transaction");
},
errorMissingParameterError: function(error) {
console.log(error);
}
});
// Sample order
const order = {
// This will fail saying duplicate order id
// generate your own order to test this.
MID: "rzqfRq*******83",
ORDER_ID: "NOETIC_ORDER_0001",
CUST_ID: "CUST_6483",
INDUSTRY_TYPE_ID: "Retail",
CHANNEL_ID: "WAP",
TXN_AMOUNT: "10.00",
WEBSITE: "WEBSTAGING",
CALLBACK_URL: "https://pguat.paytm.com/paytmchecksum/paytmCallback.jsp",
EMAIL: "rubal@example.com",
MOBILE_NO: "9876543210",
CHECKSUMHASH: "NDspZhvSHbq44K3A9Y4daf9En3l2Ndu9fmOdLG+bIwugQ6682Q3JiNprqmhiWAgGUnNcxta3LT2Vtk3EPwDww8o87A8tyn7/jAS2UAS9m+c="
};
paytm.initialize("STAGING");
paytm.createOrder(order);
paytm.startPaymentTransaction({
someUIErrorOccurred: function(inErrorMessage) {
console.log(inErrorMessage);
},
onTransactionResponse: function(inResponse) {
console.log(inResponse);
},
networkNotAvailable: function() {
console.log("Network not available");
},
clientAuthenticationFailed: function(inErrorMessage) {
console.log(inErrorMessage);
},
onErrorLoadingWebPage: function(
iniErrorCode,
inErrorMessage,
inFailingUrl
) {
console.log(iniErrorCode, inErrorMessage, inFailingUrl);
},
onBackPressedCancelTransaction: function() {
console.log("User cancelled transaction by pressing back button");
},
onTransactionCancel: function(inErrorMessage, inResponse) {
console.log(inErrorMessage, inResponse);
}
});
}
}
在执行时,我只能看到这样的屏幕:
我可以看到,取消操作时,我在控制台User cancelled transaction by pressing back button
中收到一条消息,这意味着这些事情也可以运行,但是我看不到任何屏幕,至少可以看到任何错误消息,我可以尝试调试。帮我解决这个问题。
这是我在命令提示符下看到的消息:
JS:避免在StackLayout内未设置显式高度的情况下使用ListView或ScrollView。这样做可能会导致不良的用户界面性能和不良的用户体验。 铬:[INFO:library_loader_hooks.cc(36)]已启用铬记录:级别= 0,默认详细程度= 0 铬:[INFO:aw_field_trial_creator.cc(54)]找不到首次WebView实验 JS:“用户通过按“后退”按钮取消了交易” JS:避免使用在StackLayout内未设置显式高度的ListView或ScrollView。这样做可能会导致不良的用户界面性能和不良的用户体验。 铬:[INFO:CONSOLE(0)]“用于将来从https://pguat.paytm.com加载资源的SSL证书将在将来不可信。一旦不可信,将阻止用户加载这些资源。有关信息,请参见https://g.co/chrome/symantecpkicerts更多信息。”,资料来源:(0) 铬:[INFO:CONSOLE(0)]“用于将来从https://pguat.paytm.com加载资源的SSL证书将在将来不可信。一旦不可信,将阻止用户加载这些资源。有关信息,请参见https://g.co/chrome/symantecpkicerts更多信息。”,资料来源:https://pguat.paytm.com/oltp-web/processTransaction?ORDER_ID=NOETIC_ORDER_0001(0) JS:“用户通过按“后退”按钮取消了交易” JS:避免使用在StackLayout内未设置显式高度的ListView或ScrollView。这样做可能会导致不良的用户界面性能和不良的用户体验。 铬:[INFO:CONSOLE(0)]“用于将来从https://pguat.paytm.com加载资源的SSL证书将在将来不可信。一旦不可信,将阻止用户加载这些资源。有关信息,请参见https://g.co/chrome/symantecpkicerts更多信息。”,资料来源:(0) 铬:[INFO:CONSOLE(0)]“用于将来从https://pguat.paytm.com加载资源的SSL证书将在将来不可信。一旦不可信,将阻止用户加载这些资源。有关信息,请参见https://g.co/chrome/symantecpkicerts更多信息。”,资料来源:https://pguat.paytm.com/oltp-web/processTransaction?ORDER_ID=NOETIC_ORDER_0001(0)
有关更多信息,我在GitHub repo
上提出了问题:https://github.com/nstudio/nativescript-paytm/issues/5
编辑:
我尝试通过游乐场添加它,但是由于它使用外部库集成是不可能的。但是我尝试在以下链接中使用
https://play.nativescript.org/?template=play-vue&id=CpqoNA&v=2
希望这可以提供更清晰的画面。
编辑:
我的整个payment.vue
文件看起来像以下链接:https://gist.github.com/nitish1986/f23644514082efe757f132e943f2df51
谢谢