Реагирует на сборку ReferenceError для веб-работников - PullRequest
0 голосов
/ 21 апреля 2020

У меня есть приложение реакции, которое отлично работает в режиме разработки. Я могу успешно построить приложение без проблем. Однако, когда я работаю с папкой сборки, я получаю ошибку ссылки из-за следующего кода:

(function() {
    var t = this
      , n = arguments;
    return new Promise((function(i, o) {
        var a = e.apply(t, n);
        function s(e) {
            r(a, i, o, s, l, "next", e)
        }
        function l(e) {
            r(a, i, o, s, l, "throw", e)
        }
        s(void 0)
    }
    ))
}
)()

Я считаю, что приведенный выше код является оптимизированным кодом, сгенерированным командой 'yarn build', но не уверен как решить.

Сообщение об ошибке говорит следующее:

Uncaught (in promise) ReferenceError: e is not defined

Вот код веб-работника, который я использую:

//worker.js
let baseCanvas
export default async () =>  {
    self.addEventListener('message', async (e) => { // eslint-disable-line no-restricted-globals
    if (!e) return;

    switch(e.data.message_type){
      case "X":
        if(e.data.canvas){
          baseCanvas = e.data.canvas
        }
        var canvas = baseCanvas
        var ctx = canvas.getContext('2d') // get webgl context
        const imgBlob = await fetch(e.data.stamp).then( r => r.blob())
        const img = await createImageBitmap(imgBlob)
        ctx.drawImage(img, 0,0)
        break
      default:
        console.log('default statement')
    }

    })
}

Код работает, когда я удаляю часть asyn c из рабочего, и я считаю, что проблема заключается в написанном мной асин * c коде. Однако для работы приложения мне нужна часть asyn c.

...