Service Workers can be tricky to work with in production, and often it becomes necessary to deactivate an existing SW. This is trickier than one might imagine - as long as clients on the old SW may exist it is important to serve some script at the old SW URL. This commit adds safety-worker.js to the published NPM package, which is useful for that purpose. On install the SW unregisters itself which safely and gradually allows older clients to update. PR Close #21863
		
			
				
	
	
		
			18 lines
		
	
	
		
			519 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			18 lines
		
	
	
		
			519 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
/**
 | 
						|
 * @license
 | 
						|
 * Copyright Google Inc. All Rights Reserved.
 | 
						|
 *
 | 
						|
 * Use of this source code is governed by an MIT-style license that can be
 | 
						|
 * found in the LICENSE file at https://angular.io/license
 | 
						|
 */
 | 
						|
 | 
						|
// tslint:disable:no-console
 | 
						|
 | 
						|
self.addEventListener('install', event => { self.skipWaiting(); });
 | 
						|
 | 
						|
self.addEventListener('activate', event => {
 | 
						|
  event.waitUntil(self.clients.claim());
 | 
						|
  self.registration.unregister().then(
 | 
						|
      () => { console.log('NGSW Safety Worker - unregistered old service worker'); });
 | 
						|
});
 |