今天,我将 Cordova-CLI 从版本 3.5 升级到版本 4.0。此后,我将项目的平台支持更新到最新版本的 Android(因为它们现在是单独更新的)。
从那时起,每当我运行时,我都会出现此错误cordova run android
,我收到以下错误:
未捕获的类型错误:无法设置 # 的属性连接,该连接在 file:///android_asset/www/cordova.js:512 处只有一个 getter
因此,应用程序中的许多事件无法运行,导致该应用程序无法运行。
我在更新 Cordova 后开始收到此消息,但仅限于非常旧的 Android 手机。
作为解决方法,我在 cordova.js 中生成错误(clobber)的函数的内容周围放置了一个 try/catch 块:
function clobber(obj, key, value) {
try {
exports.replaceHookForTesting(obj, key);
obj[key] = value;
// Getters can only be overridden by getters.
if (obj[key] !== value) {
utils.defineGetter(obj, key, function() {
return value;
});
}
}
catch (e){
console.error('clobber error '+e+', obj='+JSON.stringify(obj)+', key='+JSON.stringify(key)+', value='+JSON.stringify(value));
}
}
这显然不是最好的修复,但至少它可以完成初始化并且似乎不会影响我的应用程序。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)