type
只读特性在
Client
interface indicates the type of client the service worker is controlling.
var myClientType = client.type;
A string, representing the client type. The value can be one of
"window"
"worker"
"sharedworker"
// service worker client (e.g. a document)
function sendMessage(message) {
return new Promise(function(resolve, reject) {
// note that this is the ServiceWorker.postMessage version
navigator.serviceWorker.controller.postMessage(message);
window.serviceWorker.onMessage = function(e) {
resolve(e.data);
};
});
}
// controlling service worker
self.addEventListener("message", function(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);
});
| 规范 | 状态 | 注释 |
|---|---|---|
|
服务工作者
The definition of 'type' in that specification. |
工作草案 | 初始定义。 |
| 桌面 | 移动 | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
type
|
Chrome 60 | Edge ≤79 | Firefox 54 | IE 不支持 No | Opera 47 | Safari 不支持 No | WebView Android 60 | Chrome Android 60 | Firefox Android 54 | Opera Android 44 | Safari iOS 不支持 No | Samsung Internet Android 8.0 |
完整支持
不支持
实验。期望将来行为有所改变。
Client
缓存
CacheStorage
Clients
ExtendableEvent
FetchEvent
InstallEvent
Navigator.serviceWorker
NotificationEvent
PeriodicSyncEvent
PeriodicSyncManager
PeriodicSyncRegistration
ServiceWorker
ServiceWorkerContainer
ServiceWorkerGlobalScope
ServiceWorkerRegistration
SyncEvent
SyncManager
SyncRegistration
WindowClient