如何将这些箭头功能转换为常规功能以支持IE?

问题描述

我是JavaScript的新手,我不确定如何将这两个箭头函数转换为常规函数。如果有人可以转换它们并给我一个解释,那就好了!

function getBase64(file) {
    try {
            return new Promise(resolve => {
    //var file = new File([filename],filepath);
    var reader = new FileReader();
    // Read file content on file loaded event
    reader.onload = function(event) {
            $window.setTimeout(()=>{
        resolve(reader.result.replace(/^data:.+;base64,/,''));
            },250);
    };      
    reader.readAsDataURL(file); 
            });
    }
        catch (e)
            {
                console.log ("error "+ e);
            }
    }

解决方法

社区成员已经为您提供了将箭头功能转换为常规功能的建议。

所以我希望您现在对手动操作有一个了解。

如果您有使用数百个箭头功能的大型代码,则建议尝试使用Babel.js将ES6代码转换为可与IE浏览器一起使用的ES5代码。

对于大型代码,将箭头功能转换为常规功能将是最简单的方法。

使用Babel进行转码的示例:

"use strict";

function getBase64(file) {
  try {
    return new Promise(function (resolve) {
      //var file = new File([filename],filepath);
      var reader = new FileReader(); // Read file content on file loaded event

      reader.onload = function (event) {
        $window.setTimeout(function () {
          resolve(reader.result.replace(/^data:.+;base64,/,''));
        },250);
      };

      reader.readAsDataURL(file);
    });
  } catch (e) {
    console.log("error " + e);
  }
}
,

(x,y,z) => w

成为...

function(x,z){ return w; }

() => { y; }

成为

function() { y; }

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...