如何解决Android 5 中出现意外令牌错误,但在 Android 8 中没有
我正在构建一个应该在 Android 8 和 Android 5 设备上运行的 Ionic 应用程序。该应用程序使用了我自己编写的两个 Cordova 插件,它在 Android 8 上运行良好,但是当我在 Android 5 上尝试时我我收到此错误:
I/chromium( 3639): [INFO:CONSOLE(5)] "Uncaught SyntaxError: Unexpected token =>",source: http://localhost/plugins/cordova-plugin-logger/www/Logger.js (5)
Logger.js
var exec = require('cordova/exec');
var java = function(method,args) {
return new Promise((resolve,reject) => {
try {
exec(resolve,reject,'Logger',method,args || []);
} catch (err) {
reject(err);
}
});
}
exports.TAG = "LOGGER";
exports.d = function(text) {
return java("logD",[exports.TAG,text]);
}
exports.e = function(text,err) {
if (!err && typeof text == "object") {
err = text;
text = "";
}
if (err && typeof err == "object") err = JSON.stringify(err);
if (err) text = text + " " + err;
return java("logE",text.trim()]);
}
同样的错误发生在其他插件和插件的 js 文件中。我使用的是 Ionic 6.12.4 和 Cordova 10(由于设备的兼容性问题,我无法更新任何这些组件)。
对问题可能是什么有任何想法吗?
TIA
维克多·埃斯皮纳
解决方法
好吧,事实证明 Cordova 似乎不喜欢 Android 5 插件代码中的 TypeScript。我将箭头函数更改为普通函数,将 LET 更改为 CONST/VAR,现在它可以完美运行。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。