繁体   English   中英

TypeError:“未定义”不是Sencha Touch和Cordova 3.0的函数(评估“ cordova.exec”)

[英]TypeError: 'undefined' is not a function (evaluating 'cordova.exec') with Sencha Touch and Cordova 3.0

我正在使用Apache Cordova 3.0和Sencha Touch 2.3进行POC项目。 一段时间以来一切正常,但是现在每当我尝试在Cordova中调用调用我的自定义插件的代码时,都会由于标题错误而失败。

我知道onDeviceReady事件正在被触发是因为我侦听该事件并在接收到它时抛出警报弹出窗口,并且警报每次都触发。

不知道还要检查什么或提供其他详细信息?

此错误说明您的自定义插件未在您的应用中正确配置。

1)您是否在页面中包含了自定义插件的js文件? 在cordova.js之后和使用自定义插件的功能之前,添加.js文件。

2)您如何将自定义插件添加到项目中? 始终建议使用CLI工具添加/删除任何插件。

我遇到了同样的问题。 看来Adobe在从2.x升级到3.x的过程中真是一团糟。

我在插件中所做的就是检查cordova.exec并要求它(如果未定义)。 例如,在插件的最高源代码中添加以下内容:

 var cordova = require('cordova');
 cordova.exec = cordova.exec || require('cordova/exec');

这应该可以解决问题。

最好的祝福,

埃里克

发现了问题-我在index.html中显式加载了cordova.js。 但是,Sencha touch还以一种非显而易见的方式(在app.json中自动指定)显式加载了cordova.js。 一旦我删除了自己的cordova.js包含文件,它就会很好地加载。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM