Pagina pesante JavaScript / applicazione: best practice per la gestione degli errori

1

Considera un'applicazione che contiene un numero di pagine con una quantità relativamente grande di javascript presente o un'applicazione basata principalmente su JS. Lo script gestisce un numero di cose, come ad esempio:

  • Convalida lato client
  • Mostra / nascondi le sezioni di entrata quando opportuno
  • Completamento automatico durante il riempimento dei campi di testo
  • Selezione data

ecc.

Se consideriamo il caso in cui javascript è un requisito per utilizzare il sito (es. sito pubblico non pubblico), mi chiedo quale sarebbe la migliore pratica per gestire un errore imprevisto che si verifica in fase di esecuzione che causa alcune delle funzionalità a non è più presente (es. le sezioni rimangono nascoste, i controlli del calendario diventano caselle di testo vuote ecc.). Le opzioni che posso pensare sono:

  1. Cerca di fallire con garbo e avere una pagina che risponda senza alcuno script (più complicata diventa la pagina / app più complessa)

o

  1. Prova..Guarda tutto il codice critico e in caso di errore, visualizza un messaggio o reindirizza a una pagina di errore.

Sono curioso di sapere se qualcuno ha suggerimenti di "best practice" per questo?

La mia motivazione per la ricerca di questo viene dopo un bug oscuro con una versione precedente di jQuery per un utente in IE10 in esecuzione in modalità compatibilità. Questa domanda non riguarda questo, ma l'effetto "knock on" riguardava il fatto che gran parte del codice in un gestore di documenti pronto in jQuery non veniva caricato, con conseguente degenerazione significativa dell'usabilità.

    
posta Paddy 22.11.2013 - 15:51
fonte

1 risposta

2

Dovresti provare a ponderarlo sulla quantità di pezzi critici dell'applicazione che ha fallito. La ponderazione può sembrare un po 'difficile, ma pensate dal punto di vista dell'utente finale. Prova a far fallire l'app e a vedere quali funzionalità rimangono quando alcuni pezzi falliscono. È quindi possibile determinare il livello di errore critico da utilizzare come punto di reindirizzamento su un 404 o una versione HTML non elaborata dell'applicazione.

Se un'intera porzione di JQuery non viene caricata, puoi indirizzare l'utente a una pagina di errore 404, oppure fare ciò che fa Google e utilizzare una versione HTML non elaborata come reindirizzamento quando il JS fallisce.

Consider an application that contains a number of pages with a relatively large amount of javascript present, or a predominantly JS powered application.

Inoltre non capisco perché hai carichi di pagina se la tua applicazione è pesante. Hai preso in considerazione l'utilizzo di un framework JS MVC / MVVM lato client eseguito su una singola 'pagina'? Per esempio. AngularJS o EmberJS

The script handles a number things, such as:

Client side validation

Spero che tu stia eseguendo anche la convalida sul lato server, altrimenti potresti compromettere l'intero database e la sicurezza dell'applicazione.

    
risposta data 22.11.2013 - 19:51
fonte

Leggi altre domande sui tag