mathe42 / vite-plugin-comlink

Use WebWorkers in Vite with comlink!
MIT License
166 stars 17 forks source link

Cannot make it to work with SharedWorker #157

Open pvcnt opened 2 months ago

pvcnt commented 2 months ago

Describe the bug I am trying to use this plugin with a SharedWorker, and hit the following error:

TypeError: ep.postMessage is not a function
    requestResponseMessage comlink.ts:613
    requestResponseMessage comlink.ts:601
    apply comlink.ts:504

I did some debugging and ep is an instance of SharedWorker, which indeed does not have a postMessage method (ep.port has though).

To Reproduce I am using the following snippet:

const worker = new ComlinkSharedWorker<typeof import("./worker")>(
    new URL("./worker", import.meta.url), {type: "module"}
);
await worker.refresh();

Expected behavior It should work.

Desktop (please complete the following information):

mathe42 commented 2 months ago

This is a bug created with my 5.0 refactoring.