addEventListener
The overload of this method for the message event type listens for Worker messages.
addEventListener(
type: "message",
listener: (event: (
Omit<MessageEvent<any>, "data"> &
{data: unknown}
)) => void,
): void| Type | Description | |
|---|---|---|
type | "message" | The |
listener | (event: ( Omit<MessageEvent<any>, "data"> & {data: unknown} )) => void | The callback receiving messages from the Worker. |
| returns | void | This has no return value. |
Example
import {create} from 'tinyjoin';
import type {WorkerLike} from 'tinyjoin';
const worker: WorkerLike = new Worker(
new URL('./worker.ts', import.meta.url),
{type: 'module'},
);
// Count the messages the Worker sends, beside the Client's own listener.
let messages = 0;
worker.addEventListener('message', () => {
messages++;
});
const db = await create({worker});
console.log(messages > 0);
// -> true
await db.close();
The overload of this method for the messageerror event type listens for message decoding failures.
addEventListener(
type: "messageerror",
listener: (event: (
Omit<MessageEvent<any>, "data"> &
{data: unknown}
)) => void,
): void| Type | Description | |
|---|---|---|
type | "messageerror" | The |
listener | (event: ( Omit<MessageEvent<any>, "data"> & {data: unknown} )) => void | The callback receiving message decoding failures. |
| returns | void | This has no return value. |
Example
import {create} from 'tinyjoin';
import type {WorkerLike} from 'tinyjoin';
const worker: WorkerLike = new Worker(
new URL('./worker.ts', import.meta.url),
{type: 'module'},
);
// Report a message from the Worker that the page could not decode.
worker.addEventListener('messageerror', () => {
console.error('A message from the Worker could not be decoded.');
});
const db = await create({worker});
await db.close();
The overload of this method for the error event type listens for Worker runtime failures.
addEventListener(
type: "error",
listener: (event: ErrorEvent) => void,
): void| Type | Description | |
|---|---|---|
type | "error" | The |
listener | (event: ErrorEvent) => void | The callback receiving Worker runtime failures. |
| returns | void | This has no return value. |
Example
import {create} from 'tinyjoin';
import type {WorkerLike} from 'tinyjoin';
const worker: WorkerLike = new Worker(
new URL('./worker.ts', import.meta.url),
{type: 'module'},
);
// Report an error the Worker did not catch, such as a script that failed
// to load.
worker.addEventListener('error', (event) => {
console.error('The TinyJoin Worker failed:', event.message);
});
const db = await create({worker});
await db.close();