Функция ожидаемая ошибка при нажатии кнопки загрузки - PullRequest
0 голосов
/ 03 июля 2019

Когда я нажимаю кнопку загрузки на моем веб-сайте в Microsoft Edge, я получаю сообщение об ошибке "Функция ожидаема".

download() {
    this.element = document.getElementById("img") as HTMLElement;
    let dataurl = this.element.innerHTML;
    let myRegexp = /(?:^|\s)src=(.*?)(?:\s|$)/g;
    let match = myRegexp.exec(dataurl);
    let match1 = match[1].replace('"></div>', '');

    this.ImageURL = match1;
    let block = this.ImageURL.split(";");
    let contentType = block[0].split(":")[1];
    let realData = block[1].split(",")[1];
    let file = this.dataURLtoFile(this.ImageURL, 'QRCode.png');
}

  dataURLtoFile(dataurl, filename) {
    var arr = dataurl.split(','), mime = arr[0].match(/:(.*?);/)[1],
      bstr = atob(arr[1]), n = bstr.length, u8arr = new Uint8Array(n);
    while (n--) {
      u8arr[n] = bstr.charCodeAt(n);
    }
    var a = document.createElement("a");
    document.body.appendChild(a);
    var blob = new Blob([new File([u8arr], filename, { type: mime })], { type: 'mime' }),
      url = window.URL.createObjectURL(blob);
    a.href = url;
    a.download = `QRCode.png`;
    a.click();
    setTimeout(function () {
      document.body.removeChild(a);
      window.URL.revokeObjectURL(url);
    }, 100);
    return new File([u8arr], filename, { type: mime });
}

Файл должен скачать:

Вот ошибка:

[Ошибка объекта]: {описание: «Ожидается функция», сообщение: «Функция» ожидается ", номер: -2146823286, стек:" Ошибка типа: ожидается функция в n.prototype.dataURLtoFile (http://instacei.com/1.bb25259c0233e7528077.js:1:237067) при n.prototype.download (http://instacei.com/1.bb25259c0233e7528077.js:1:236764) на Anonymous функция (http://instacei.com/1.bb25259c0233e7528077.js:1:155143) при handleEvent (http://instacei.com/main.1533bf301f026a959db3.js:1:117135) при handleEvent (http://instacei.com/main.1533bf301f026a959db3.js:1:138938) на лр (http://instacei.com/main.1533bf301f026a959db3.js:1:87225) при Анонимная функция (http://instacei.com/main.1533bf301f026a959db3.js:1:93361) в Анонимная функция (http://instacei.com/main.1533bf301f026a959db3.js:1:284082) в e.prototype.invokeTask (http://instacei.com/polyfills.481858ef51fe27531859.js:1:7664) в onInvokeTask (http://instacei.com/main.1533bf301f026a959db3.js:1:55627)"}

...