Атрибуция глобальной переменной в функции обещания - PullRequest
0 голосов
/ 27 ноября 2018

Я попытался вставить функцию toDataurl в проект Angular, который позволяет нам преобразовывать картинку активов в строку base64.

toDataURL(url) {
  var promise = new Promise(function (extract) {
    var xhr = new XMLHttpRequest();
    xhr.open('get', url);
    xhr.responseType = 'blob';
    xhr.onload = function() {
      var fr = new FileReader();
      var test = fr.onload = function() {
        extract(this.result);
        return this.result;
      };
      fr.readAsDataURL(xhr.response); // async call
    };
    xhr.send(); 
  });
  return promise;
}

Я пытался связать ее результат с глобальной переменной base64result в promise функция.Но эта переменная ведет себя как локальная переменная.Мне нужно это для следующих инструкций.

this.toDataURL(chemin).then((result) => {
  this.base64result=result
});

Спасибо

...