fix: lazy load ai worker
This commit is contained in:
parent
7090117d8f
commit
7e3e47b4ba
@ -1,20 +1,26 @@
|
||||
import { bufToImageUrl, imageToArray } from ".";
|
||||
|
||||
const worker = new Worker("build/workers/ai-worker.js");
|
||||
let worker;
|
||||
|
||||
let i = 0;
|
||||
|
||||
let cb = {};
|
||||
|
||||
worker.addEventListener("message", ev => {
|
||||
if (ev.data.i in cb) {
|
||||
cb[ev.data.i](ev.data.result);
|
||||
delete cb[ev.data.i]
|
||||
delete ev.data.i;
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
const analyze = (img: Image) => new Promise(async (res, rej) => {
|
||||
|
||||
if (!worker) {
|
||||
worker = new Worker("build/workers/ai-worker.js");
|
||||
worker.addEventListener("message", ev => {
|
||||
if (ev.data.i in cb) {
|
||||
cb[ev.data.i](ev.data.result);
|
||||
delete cb[ev.data.i]
|
||||
delete ev.data.i;
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
i++;
|
||||
const _i = i;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user