deno / 1.23.2 / ~ / messageport.html /

MessagePort

The MessagePort interface of the Channel Messaging API represents one of the two ports of a MessageChannel, allowing messages to be sent from one port and listening out for them arriving at the other.

class MessagePort extends EventTarget {
onmessage : ((this: MessagePort, ev: MessageEvent) => any) | null;
onmessageerror : ((this: MessagePort, ev: MessageEvent) => any) | null;
addEventListener <K extends keyof MessagePortEventMap>(
type: K,
listener: (this: MessagePort, ev: MessagePortEventMap[K]) => any,
options?: boolean | AddEventListenerOptions,
) : void;
addEventListener(
type: string,
options?: boolean | AddEventListenerOptions,
) : void;
close() : void;
postMessage( message: any , transfer: Transferable[]) : void;
postMessage( message: any , options?: StructuredSerializeOptions) : void;
removeEventListener <K extends keyof MessagePortEventMap>(
type: K,
listener: (this: MessagePort, ev: MessagePortEventMap[K]) => any,
options?: boolean | EventListenerOptions,
) : void;
removeEventListener(
type: string,
options?: boolean | EventListenerOptions,
) : void;
start() : void;
}

Extends

EventTarget

Properties

onmessage : ((this: MessagePort, ev: MessageEvent) => any) | null
onmessageerror : ((this: MessagePort, ev: MessageEvent) => any) | null

Methods

addEventListener <K extends keyof MessagePortEventMap>( type: K , listener: (this: MessagePort, ev: MessagePortEventMap[K]) => any , options?: boolean | AddEventListenerOptions) : void
addEventListener( type: string , listener: EventListenerOrEventListenerObject , options?: boolean | AddEventListenerOptions) : void
close() : void

Disconnects the port, so that it is no longer active.

postMessage( message: any , transfer: Transferable[]) : void

Posts a message through the channel. Objects listed in transfer are transferred, not just cloned, meaning that they are no longer usable on the sending side.

Throws a "DataCloneError" DOMException if transfer contains duplicate objects or port, or if message could not be cloned.

postMessage( message: any , options?: StructuredSerializeOptions) : void
removeEventListener <K extends keyof MessagePortEventMap>( type: K , listener: (this: MessagePort, ev: MessagePortEventMap[K]) => any , options?: boolean | EventListenerOptions) : void
removeEventListener( type: string , listener: EventListenerOrEventListenerObject , options?: boolean | EventListenerOptions) : void
start() : void

Begins dispatching messages received on the port. This is implictly called when assiging a value to this.onmessage.

© 2018–2022 the Deno authors
https://doc.deno.land/deno/stable/~/MessagePort