Skip to content

Instantly share code, notes, and snippets.

@Antoinebr
Created June 25, 2018 19:10
Show Gist options
  • Save Antoinebr/af70c9a59e344d3f1db059db35563e15 to your computer and use it in GitHub Desktop.
Save Antoinebr/af70c9a59e344d3f1db059db35563e15 to your computer and use it in GitHub Desktop.
pwa-defering-prompt.js
/*
| --------------------------------------------------------------------------
| Defering prompt
| --------------------------------------------------------------------------
*/
let deferredPrompt;
window.addEventListener('beforeinstallprompt', event =>{
console.log('Before installprompt fired');
event.preventDefault();
deferredPrompt = event;
return false;
});
/**
* Invoke showPrompt() to trigger
* the stashed event
*
*/
const showPrompt = () => {
if( ! deferredPrompt ) return false;
deferredPrompt.prompt();
deferredPrompt.userChoice.then( choiceResult => {
if (choiceResult.outcome === "dismissed") console.log('User cancelled install');
if (choiceResult.outcome !== "dismissed") console.log('User added to HomeScreen');
});
deferredPrompt = null;
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment