【发布时间】:2018-10-23 07:27:59
【问题描述】:
我想改造这个方法,完全适用于 SAP WEB IDE 中的 ESLint 规则:
getBase64Promise: function (file) {
return new Promise((resolve, reject) => { // <--
const reader = new FileReader();
reader.readAsDataURL(file);
reader.onload = () => { // <--
let encoded = reader.result.replace("data:", "").replace(/^.*;base64,/, ""); // <--
if ((encoded.length % 4) > 0) {
encoded += '='.repeat(4 - (encoded.length % 4));
}
resolve(encoded);
};
reader.onerror = error => reject(error); // <--
});
},
ESLint 因以下规则而失败:
- 应替换使用“=>”的括号模式
- “let”也应该被替换
有人可以帮忙吗?我尝试了一些东西,但它根本不起作用:
getBase64Promise: function (file) {
return new Promise(function (resolve, reject) {
var reader = new FileReader();
reader.readAsDataURL(file);
reader.onload(function () {
var encoded = reader.result.replace("data:", "").replace(/^.*;base64,/, "");
if ((encoded.length % 4) > 0) {
encoded += "=".repeat(4 - (encoded.length % 4));
}
resolve(encoded);
});
reader.onerror(function () {
reject(reader.error);
});
});
},
谢谢 克里斯
【问题讨论】:
-
是的,可能是特定于编辑器的(来自 SAP 的 WEB IDE),但我只能看到错误消息而不是详细的底层 ESLint 规则。对不起。但我知道在替换所有“=>”和“让”时它不会显示任何错误。
标签: javascript ecmascript-6 sapui5 eslint sap-web-ide