In base alla mia esperienza, non consiglierei di implementare uno window.onerror
, a meno che non si abbia una valida ragione per farlo e si sa cosa si potrebbe fare.
Per quanto mi consta, tutti i metodi onerror
di Ember sono portati su window.onerror
e l'override di esso ha la possibilità di sovrascrivere/disabilitare tutti gli errori nell'app.
Caso in questione, ho avuto un'esperienza recente in cui ho notato che tutti i miei errori js hanno interrotto la registrazione alla console del tutto. Il motivo era che un altro sviluppatore del mio team si era riavviato nel mio index.html per iniettare un tag <script>
che utilizzava window.onerror
per alcuni script di segnalazione degli errori. Il risultato è stato che l'override di window
disabilita letteralmente tutti gli onerror
di Ember perché funzionano in modo spumeggiante.
Penso che se si desidera eseguire l'override di window.onerror
è necessario assicurarsi che restituisca sempre false
in modo che non impedisca la gestione degli errori predefinita nel browser.
Vedi: https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onerror
Mi auguro che aiuta a chiarire in una certa misura.
Si dovrebbe gestire '' window.onerror' Ember.onerror' e 'Ember.RSVP.onerror ' – runspired
Avete qualche dimostrazione o esempio del perché dovrei gestire' window.onerror'? – pogopaule
Non c'è una reale necessità di gestire 'Ember.RSVP.onerror' se si gestisce già' Ember.onerror'. Vedi [il codice] (https://github.com/emberjs/ember.js/blob/v2.2.2/packages/ember-runtime/lib/ext/rsvp.js#L71) – pogopaule