微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – TypeError“在将项目升级到最新版本的Cordova 4.0.0时,无法在控制台中设置#”的属性连接

今天,我将Cordova-CLI从3.5版升级到4.0版.在此之后,我将项目的平台支持更新到最新版本的 Android(因为它们现在单独更新).

从那以后,每当我运行cordova运行android时,我都会出现此错误,我收到以下错误

Uncaught TypeError: Cannot set property connection of # which has only a getter at file:///android_asset/www/cordova.js:512

因此,应用程序中的许多事件都无法运行,导致该应用程序无法运行.

解决方法

我通过CLI 4.1.2获得了Android cordova 3.6.4的相同问题.我试图合并两个问题:CB-7868.第一次固定可以通过链接CB-7868,https://github.com/apache/cordova-js/pull/88进行锯切.第二个问题是关于CB-7868的评论.

见*************

function clobber(obj,key,value) {

exports.replaceHookForTesting(obj,key);

obj[key] = value;
var needsProperty = false;
try { obj[key] = value; }
catch (e) { needsProperty = true; }
// Getters can only be overridden by getters.
if (obj[key] !== value) {
   if (needsProperty || obj[key] !== value) {
       utils.defineGetter(obj,function() { return value; }
 );

有了这两个修复. Android API14(4.0)和API15(4.0.3)上未报告任何错误.但是,我没有尝试相关的插件是否可以工作.这意味着我不知道修复是否正确.

另外,我通过CLI 4.1.2为IOS平台获得了cordova 3.7.0.我可以看到修复,https://github.com/apache/cordova-js/pull/88,已经应用于3.7.0 JS.但是,功能,clobber,仍然没有上面的修复.此外,没有适用于Android cordova的3.7.0.对于Android平台,它仍然是3.6.4.

原文地址:https://www.jb51.cc/js/159173.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐