我在两台不同的计算机上构建了我的Ionic项目并获得了不同的结果 .

第一台电脑:Ionic Info

离子:离子(离子CLI):4.2.1(/ usr / local / lib / node_modules / ionic)离子框架:离子角3.9.2 @ ionic / app-scripts:3.2.0 Cordova:cordova(Cordova CLI) :8.1.2(cordova-lib@8.1.1)Cordova平台:android 7.1.1 Cordova插件:没有白名单插件(总共19个插件)系统:NodeJS:v8.11.3(/ usr / bin / node)npm:6.2 . 0操作系统:Linux 4.15

FileReader只在我把等待放入reader.readAsDataURL();

第二台电脑:

Ionic info cli包:(/ usr / local / lib / node_modules)@ ionic / cli-utils:1.19.2
离子(离子CLI):3.20.0
全局包:cordova(Cordova CLI):8.0.0
本地包:@ ionic / app-scripts:3.1.8
Cordova平台:ios 4.5.4
离子框架:离子角3.9.2

我的代码:

async downloadFromURL(fileName, mimeType, url){
    return new Promise((resolve,reject) => {
        try{
            var self = this;
            var xhr = new XMLHttpRequest();
            xhr.open('GET', url, true);
            xhr.responseType='blob';  
            xhr.onloadend = async function(e) {
                if (xhr.status == 200)
                {
                    var reader = new FileReader();
                    reader.onloadend = async function(event){
                        var response = self.insertFile({
                            'type': mimeType,
                            'title': fileName
                        }, event.target["result"].split(',')[1]);
                        resolve(response);
                    }
                    await reader.readAsDataURL(xhr.response);
                }
            };
            xhr.send();
        } catch (error) {
            reject();
            console.log("error", error);
        }
    });
}

所以,我的问题是如何在没有更新离子和cordova的情况下解决这个问题?

抱歉我的英语不好:D

提前致谢 .