这是
实验性技术
检查
浏览器兼容性表格
要小心谨慎在生产中使用这之前。
navigationPreload
只读特性在
FetchEvent
interface returns a
Promise
that resolves to the instance of
NavigationPreloadManager
associated with the current service worker registration.
var promise = fetchEvent.navigationPreload
A
Promise
that resolves to the instance of
NavigationPreloadManager
.
The following example shows the implementation of a fetch event that uses a preloaded response.
addEventListener('fetch', event => {
event.respondWith(async function() {
// Respond from the cache if we can
const cachedResponse = await caches.match(event.request);
if (cachedResponse) return cachedResponse;
// Else, use the preloaded response, if it's there
const response = await event.preloadResponse;
if (response) return response;
// Else try the network.
return fetch(event.request);
}());
});
| 规范 | 状态 | 注释 |
|---|---|---|
|
服务工作者
The definition of 'navigationPreload' in that specification. |
工作草案 | 初始定义。 |
| 桌面 | 移动 | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
navigationPreload
|
Chrome 59 | Edge ≤79 | Firefox ? | IE 不支持 No | Opera 46 | Safari 不支持 No | WebView Android 59 | Chrome Android 59 | Firefox Android ? | Opera Android 43 | Safari iOS 不支持 No | Samsung Internet Android 7.0 |
完整支持
不支持
兼容性未知
实验。期望将来行为有所改变。
FetchEvent
client
clientId
isReload
navigationPreload
PreloadRequest
preloadResponse
replacesClientId
request
resultingClientId
缓存
CacheStorage
Client
Clients
ExtendableEvent
InstallEvent
Navigator.serviceWorker
NotificationEvent
PeriodicSyncEvent
PeriodicSyncManager
PeriodicSyncRegistration
ServiceWorker
ServiceWorkerContainer
ServiceWorkerGlobalScope
ServiceWorkerRegistration
SyncEvent
SyncManager
SyncRegistration
WindowClient