Worker: messageerror イベント
messageerror イベントは、 Worker オブジェクトに、解読 (deserialize) できないメッセージを受け取ったときに発生します。
このイベントはキャンセル不可で、バブリングしません。
構文
このイベント名を addEventListener() などのメソッドで使用するか、イベントハンドラープロパティを設定するかしてください。
js
addEventListener('messageerror', (event) => { });
onmessageerror = (event) => { };
イベント型
MessageEvent です。 Event を継承しています。
イベントプロパティ
このインターフェイスには、親である Event から継承したプロパティもあります。
MessageEvent.data読取専用-
メッセージ送信者から送信されたデータです。
MessageEvent.origin読取専用-
文字列で、メッセージ送信者のオリジンを表します。
MessageEvent.lastEventId読取専用-
文字列で、このイベントの固有の ID を表します。
MessageEvent.source読取専用-
MessageEventSource(WindowProxy,MessagePort,ServiceWorkerの何れかのオブジェクトがなれる)で、メッセージ送信者を表します。 MessageEvent.ports読取専用-
MessagePortオブジェクトの配列で、メッセージが送信されるチャネルに関連するポートを表します(チャネルメッセージングや共有ワーカーにメッセージを送信する場合など、必要に応じて)。
例
ワーカーを作成し、 message および messageerror イベントを addEventListener() で待ち受けします。
js
// main.js
const worker = new Worker("static/scripts/worker.js");
worker.addEventListener("message", (event) => {
console.error(`Received message from worker: ${event}`);
});
worker.addEventListener("messageerror", (event) => {
console.error(`Error receiving message from worker: ${event}`);
});
同じですが、 onmessageerror イベントハンドラープロパティを使用した例です。
js
// main.js
const worker = new Worker("static/scripts/worker.js");
worker.onmessage = (event) => {
console.error(`Received message from worker: ${event}`);
};
worker.onmessageerror = (event) => {
console.error(`Error receiving message from worker: ${event}`);
};
仕様
| Specification |
|---|
| HTML Standard # event-messageerror |
ブラウザーの互換性
BCD tables only load in the browser
関連項目
Worker.postMessage()- 関連イベント:
message