BroadcastChannel: messageerror イベント
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2022年3月.
messageerror イベントは、シリアル化を解釈できないメッセージがチャンネルに到着したときに BroadcastChannel オブジェクト上で発生します。
構文
このイベント名を addEventListener() のようなメソッドで使用するか、イベントハンドラープロパティを設定するかしてください。
addEventListener("messageerror", (event) => { })
onmessageerror = (event) => { }
イベント型
MessageEvent です。 Event を継承しています。
イベントプロパティ
このインターフェイスは親である Event からプロパティを継承しています。
MessageEvent.data読取専用-
メッセージ送信元によって送信されたデータです。
MessageEvent.origin読取専用-
文字列で、メッセージ送信元のオリジンを表します。
MessageEvent.lastEventId読取専用-
文字列で、このイベントの一意の ID を表します。
MessageEvent.source読取専用-
メッセージイベントソース、すなわち WindowProxy、
MessagePort、ServiceWorkerの何れかのオブジェクトで、メッセージの送信元を表します。 MessageEvent.ports読取専用-
MessagePortオブジェクトの配列で、メッセージが送信されるチャンネルに関連するポートを表します(チャンネルメッセージングや、共有ワーカーにメッセージを送信する場合など、適切な場合)。
例
このコードは addEventListener を使用してメッセージとエラーを待ち受けします。
const channel = new BroadcastChannel("example-channel");
channel.addEventListener("message", (event) => {
received.textContent = event.data;
});
channel.addEventListener("messageerror", (event) => {
console.error(event);
});
上と同じですが、 onmessage と onmessageerror のイベントハンドラープロパティを使用します。
const channel = new BroadcastChannel("example-channel");
channel.onmessage = (event) => {
received.textContent = event.data;
};
channel.onmessageerror = (event) => {
console.log(event);
};
仕様書
| Specification |
|---|
| HTML> # event-messageerror> |
| HTML> # handler-broadcastchannel-onmessageerror> |
ブラウザーの互換性
Loading…
関連情報
- 関連イベント:
message