Ho un oggetto javascript che mi serve per l'applicazione angularjs globale. Quando l'applicazione sta per essere scaricata (a causa di un aggiornamento della pagina o di qualche altro scenario), vorrei mantenere l'oggetto nella memoria del browser. Credo che aggiungere l'oggetto a $ rootScope soddisfi il primo requisito di rendere globale l'oggetto, ma scrivere l'oggetto sullo storage durante l'evento onbeforeunload
richiederebbe l'accesso alla variabile $ rootScope. È possibile rilevare un evento di scarico della pagina in angularjs?Rilevamento dello scaricamento della pagina in angularjs
risposta
Questo dovrebbe farlo, ma suggerisco anche di evitare $rootScope
in quanto lo stato globale è sconsigliato e si potrebbe anche avvolgere localStorage
in un servizio in modo che possa essere iniettato e deriso per il test.
.run([
'$window',
'$rootScope',
function($window, $rootScope) {
$window.addEventListener('beforeunload', function() {
localStorage.myValue = $rootScope.myValue;
});
}
]);
Grazie. E l'evento per il caricamento completato della pagina sarà 'load'? – user1491636
@ user1491636 Non penso che dovresti usare quell'evento. Se vuoi che qualcosa venga eseguito all'inizio della tua app Angular, inseriscilo in un blocco 'run' come nel mio esempio qui. – m59
La soluzione non risolve il problema, perché anche facendo clic su Annulla viene chiamato. –
- 1. rilevamento della chiusura (o scaricamento) della pagina in asp.net mvc3
- 2. Rilevamento dello stato della chiamata in iOS4
- 3. rilevamento della dimensione della pagina di memoria
- 4. Ottieni intestazione della pagina esistente in angularjs
- 5. Rilevamento dello shake in AppDelegate
- 6. Rilevamento dello stato della rete (connesso - disconnesso) in C#
- 7. Rilevamento dello stack pieno
- 8. AngularJS come utilizzare il rilevamento della lingua del browser?
- 9. Come scorrere verso l'alto della pagina in AngularJS?
- 10. carico AngularJS Template all'interno della pagina, in modo dinamico
- 11. Rilevamento della posizione UIScrollView
- 12. "Eccezione sconosciuta" quando si annulla pagina di scaricamento con "location.href"
- 13. Rilevamento della trasparenza in un'immagine
- 14. Rilevamento della griglia in MATLAB
- 15. rilevamento della piattaforma in cmake
- 16. Reindirizzamento alla pagina di errore in Angularjs
- 17. altezza della pagina in javascript
- 18. AngularJS più modelli in una pagina
- 19. Rilevamento della disconnessione della presa?
- 20. Come animare una pagina allo scaricamento, dopo che la nuova pagina è stata precaricata (jQuery)
- 21. Angularjs: Perché l'aggiornamento della pagina distrugge i valori di $ rootScope?
- 22. AngularJS: Risolve in RouteProvider - rilevamento del successo/fallimento?
- 23. AngularJS - Rilevamento, stallo e cancellazione delle modifiche al percorso
- 24. Scaricamento/Rimozione del contenuto da un iFrame
- 25. Rilevamento della distruzione globale in Perl
- 26. Rilevamento della catena del metodo in PHP?
- 27. Rilevamento della larghezza: auto in jQuery
- 28. Rilevamento automatico della console in perl
- 29. Rilevamento della linea OpenCV in generale
- 30. AngularJs e pagina di destinazione
Hai pensato di usare qualcosa come https://github.com/grevory/angular-local-storage o https://github.com/gsklee/ngStorage – Vadim