BroadcastChannel: messageerror イベント
Baseline 2022
Newly available
Since March 2022, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.
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 Standard # event-messageerror |
HTML Standard # handler-broadcastchannel-onmessageerror |
ブラウザーの互換性
BCD tables only load in the browser
関連情報
- 関連イベント:
message