Client: type-Eigenschaft

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2018.

Hinweis: Diese Funktion ist nur in Service Workers verfügbar.

Die schreibgeschützte type-Eigenschaft der Client Schnittstelle gibt den Typ des Clients an, den der Service Worker steuert.

Wert

Ein String, der den Client-Typ repräsentiert. Der Wert kann einer der folgenden sein:

  • "window"
  • "worker"
  • "sharedworker"

Beispiele

js
// service worker client (e.g. a document)
function sendMessage(message) {
  return new Promise((resolve, reject) => {
    // note that this is the ServiceWorker.postMessage version
    navigator.serviceWorker.controller.postMessage(message);
    window.serviceWorker.onMessage = (e) => {
      resolve(e.data);
    };
  });
}

// controlling service worker
self.addEventListener("message", (e) => {
  // e.source is a client object
  e.source.postMessage(`Hello! Your message was: ${e.data}`);
  // Let's also post the type value back to the client
  e.source.postMessage(e.source.type);
});

Spezifikationen

Specification
Service Workers
# client-type

Browser-Kompatibilität

BCD tables only load in the browser