ExtendableMessageEvent: свойство data
Базовый уровень Широко доступен
Эта функция хорошо отработана и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с апреля 2018 года.
Примечание: Эта функция доступна только в Service Workers.
Чтение только свойство data интерфейса ExtendableMessageEvent возвращает данные события. Это может быть любой тип данных.
Значение
Любой тип данных.
Примеры
При использовании следующего кода внутри service worker для ответа на push-сообщения, отправив полученные данные через PushMessageData в основной контекст через сообщение канала, объект события onmessage будет ExtendableMessageEvent.
let port;
self.addEventListener("push", (e) => {
const obj = e.data.json();
if (obj.action === "subscribe" || obj.action === "unsubscribe") {
port.postMessage(obj);
} else if (obj.action === "init" || obj.action === "chatMsg") {
port.postMessage(obj);
}
});
self.onmessage = (e) => {
console.log(e.data);
port = e.ports[0];
};
Спецификации
| Спецификация |
|---|
| Service Workers # extendablemessage-event-data |
Совместимость браузеров
| Рабочий стол | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
data |
51 | 17 | 44 | 38 | 11.1 | 51 | 44 | 41 | 11.3 | 5.0 | 51 |
См. также
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/ExtendableMessageEvent/data