Remote Worker
Leightweight (~300b) Worker patch to allow loading scripts from remote URLs
Installation
npm install --save-dev remote-web-worker
Usage
Apply Patch
import 'remote-web-worker';
Initialize a Worker just like you would normally do:
const worker = new Worker(
'https://cdn.jsdelivr.net/npm/console-log-hello-world',
{ type: 'classic' }
);
How it works
According to spec the Worker constructor accepts only local URLs, not remote URLs:
https://developer.mozilla.org/en-US/docs/Web/API/Worker/Worker
As a workaround this patched Worker will use importScripts
to load the remote script.
https://developer.mozilla.org/en-US/docs/Web/API/WorkerGlobalScope/importScripts
Compatibility
- Chrome 4+
- Firefox 4+
- Safari 4+
Limitations
- Only supports
type="classic"
workers (no import
or export
)
License
MIT