Using a custom WebWorker
The Client.worker
constructor by default creates a dedicated Worker
bound to
the page context. Alternatively, Client.worker
can take a Worker
,
SharedWorker
or ServiceWorker
instance as a first argument, which load the
worker script disted at
"@finos/perspective/dist/cdn/perspective-server.worker.js"
.
SharedWorker
and ServiceWorker
have more complicated
behavior compared to a dedicated Worker
, and will need special consideration
to integrate (or debug).
Dedicated Worker
const worker = await perspective.worker(new Worker(url));
SharedWorker
const worker = await perspective.worker(new SharedWorker(url));
ServiceWorker
const registration = await navigator.serviceWorker.register(url, {
scope: "", // Your scope here
});
const worker = await perspective.worker(registration.active);