我使用的是Worklight 6.1版。
我在Hybrid应用程序中创建了一个本机(iPhone)组件 我还有2个HTML页面:默认的index.html和card.html。
我可以从index.html导航到card.html 在card.html中,我添加了一个名为“Addcard”的按钮。单击“AddCard”按钮时,将调用JS函数,该函数将通过cordova插件(cordova.exec)显示本机组件:
cordova.exec(wrappedSuccess, failureCallback, "CardIOPGPlugin", "canScan", []);
在本机页面中,通过使用“返回”按钮,我可以返回到card.html,并从那里返回到index.html。
问题是,现在如果我再次尝试从index.html导航到card.html,则cordova.exec方法无效。
App Flow:
第一页 - index.html页面,要导航到card.html页面表单index.html页面,我正在使用$("#HomePage").load("htmlpages/cardinfo.html", function(){});
第二页是card.html,它有两个按钮:
Scancard()
,然后在cardioplugin.js中调用canScan
,然后调用cordova.exec(wrappedSuccess, failureCallback, "CardIOPGPlugin", "canScan", []);
答案 0 :(得分:0)
由于您很长时间没有回复评论中的问题,我继续创建了一个模拟您的流程的应用程序,就像我理解的那样。
对我来说,流程正常,cordova.exec始终执行 您可以通过从https://www.dropbox.com/s/edn71leo5197i80/multipageexecuteplugin.zip?dl=0
下载Worklight 6.1.0.2项目来自行查看实施请注意,某些文件也位于iphone \ nativeResources文件夹中,因此您可以轻松地运行应用程序,而无需事先进行任何设置。
至于为什么会发生在你身上:
这可能是因为你正在重新加载index.html文件(我的实现方式不同),但这个机会很少。