files/en-us/web/api/navigationpreloadmanager/disable/index.md
{{APIRef("Service Workers API")}}{{SecureContext_Header}}{{AvailableInWorkers}}
The disable() method of the {{domxref("NavigationPreloadManager")}} interface halts the automatic preloading of service-worker-managed resources previously started using {{domxref("NavigationPreloadManager.enable()","enable()")}}
It returns a promise that resolves with undefined.
The method may be called in the service worker's activate event handler (before the fetch event handler can be called).
disable()
None.
A {{jsxref("Promise")}} that resolves with {{jsxref('undefined')}}.
InvalidStateError {{domxref("DOMException")}}
The code below shows how to disable preloading, after first using {{domxref("ServiceWorkerRegistration.navigationPreload")}} to test that it is supported.
addEventListener("activate", (event) => {
event.waitUntil(
(async () => {
if (self.registration.navigationPreload) {
// Disable navigation preloads!
await self.registration.navigationPreload.disable();
}
})(),
);
});
{{Specifications}}
{{Compat}}
{{domxref("NavigationPreloadManager.enable()")}}