DedicatedWorkerGlobalScope: messageerror イベント
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2023年3月.
messageerror イベントは DedicatedWorkerGlobalScope オブジェクトで、シリアライズ解除できないメッセージを受け取ったときに発生します。
このイベントはキャンセル不可で、バブリングしません。
構文
このイベント名を addEventListener() などのメソッドで使用するか、イベントハンドラープロパティを設定するかしてください。
addEventListener("messageerror", (event) => {});
onmessageerror = (event) => {};
イベント型
MessageEvent です。 Event を継承しています。
イベントプロパティ
このインターフェイスには、親である Event から継承したプロパティもあります。
MessageEvent.data読取専用-
メッセージ送信者から送信されたデータです。
MessageEvent.origin読取専用-
文字列で、メッセージ送信者のオリジンを表します。
MessageEvent.lastEventId読取専用-
文字列で、このイベントの固有の ID を表します。
MessageEvent.source読取専用-
MessageEventSource(WindowProxy,MessagePort,ServiceWorkerの何れかのオブジェクトがなれる)で、メッセージ送信者を表します。 MessageEvent.ports読取専用-
MessagePortオブジェクトの配列で、メッセージが送信されるチャネルに関連するポートを表します(チャネルメッセージングや共有ワーカーにメッセージを送信する場合など、必要に応じて)。
例
messageerror は addEventListener() を使用して待ち受けします。
// worker.js
self.addEventListener("messageerror", (event) => {
self.postMessage("Error receiving message");
console.error(event);
});
同じですが、 onmessageerror イベントハンドラープロパティを使用しています。
// worker.js
self.onmessageerror = (event) => {
self.postMessage("Error receiving message");
console.error(event);
};
仕様書
| Specification |
|---|
| HTML> # event-messageerror> |
| HTML> # handler-messageeventtarget-onmessageerror> |
ブラウザーの互換性
Loading…