# Update Strategies — Progressive Web Apps

Source: https://www.geekswithgeeks.com/hi/pwa/pwa-update-strategies

> Service workers और cached content को update करने के लिए strategies को implement करें बिना user experience को break किए।

## Update Patterns

जब service workers या cache बदलते हैं, आपको ongoing operations को break किए बिना safely update करने के लिए strategies की जरूरत है। Patterns में checking for updates, skipping waiting और users को notify करना शामिल है।

## Service worker को detect और update करें

Periodically updates check करें और नए version उपलब्ध होने पर users को notify करें।

```javascript
navigator.serviceWorker.getRegistration().then(reg => {
  setInterval(() => {
    reg.update(); // Check for updates
  }, 60000); // Every minute
});

let newWorker;
navigator.serviceWorker.addEventListener('controllerchange', () => {
  console.log('New service worker controlling the page');
  // Notify user to refresh
});

navigator.serviceWorker.onmessage = event => {
  if (event.data.type === 'SKIP_WAITING') {
    newWorker?.postMessage({ type: 'CLIENTS_CLAIM' });
  }
};
```

Output:

```
App checks for service worker updates and notifies users of new versions.
```

## एक आम गलती

Users को notify किए बिना immediate updates को force न करें। Users को decide करने दें कि उन्हें अपने app को कब refresh करना है।
