Я работаю над этим небольшим проектом для дополненной реальности, ARnft он основан на более легкой версии Jsartoolkit5, JsartoolkitNFT только для NFT маркеров. Код соответствует стандарту ES6 (частично) и использует webpack в качестве компоновщика. Все нормально в режиме разработки, но когда я go в производственном режиме, пример застрял с этой ошибкой:
05ff8846-4121-4380-86c3-9612f404732a:1 Uncaught SyntaxError: Function statements require a function name
Это останавливается на встроенном Worker. Приложение не входит внутрь, потому что в противном случае я получу некоторые сообщения в консоли разработчика. Я вставляю Worker в объект Blob:
// create a Worker to handle loading of NFT marker and tracking of it
const workerBlob = new Blob(
[workerRunner.toString().replace(/^function .+\{?|\}$/g, '')],
{ type: 'text/js-worker' }
)
const workerBlobUrl = URL.createObjectURL(workerBlob)
worker = new Worker(workerBlobUrl)
https://github.com/kalwalt/ARnft/blob/8322585aa0f863917c6d1cee541356ff3b7c36a0/src/utils/Utils.js#L207 -L213
workerRunner, определенный в этой строке:
https://github.com/kalwalt/ARnft/blob/8322585aa0f863917c6d1cee541356ff3b7c36a0/src/utils/Utils.js#L272
Я думаю, что это проблема минимизации, которую я пытался добавить --optimize-minimize
в сценарий:
"build-es6": "webpack --mode production --optimize-minimize",
, но не помогло. Как я могу решить это?
Спасибо