2015-10-30 8 views
16

Chrome DevTools hat mehrere nützliche Filter, die Protokollierung zu begrenzen: Errors, Warnings, Info usw.Wofür wird der Handled-Filter in Chrome DevTools verwendet?

Der letzte Filter Handled genannt wird, und ich habe noch, um herauszufinden, was das für verwendet wird. Das ist kein console.handle() oder ähnliches. Googeln hat keine Antwort gegeben.

Für was und wie benutze ich den Filter Handled?

+0

Scheint behandelt Ausnahmen zu beziehen, aber ich bin zu kämpfen, wie zu sehen. –

Antwort

26

Dieser Filter wird für Ausnahmen innerhalb eines Versprechens behandelt. Der Filter wurde mit this patch zur Benutzeroberfläche hinzugefügt. Enthalten test und verknüpfte ticket offenbaren, worum es bei dieser Funktion geht.


Wenn wir erstellen ein Versprechen und lehnen es etwa so:

var p = new Promise((resolve, reject) => reject('ooops')) 

Fehlermeldung wird sofort auf der Konsole ausgegeben werden:

uncaught error in promise

können jedoch Ablehnung behandelt werden später:

p.catch(e => {}) 

vorherige Fehlermeldung verursacht Zustand ändern:

handled error

"Uncaught (in Versprechen) Ooops" wird zu einem "behandelt Versprechen Ablehnung". Da es nicht mehr als Fehler angesehen wird, wird es nicht angezeigt, wenn der Filter "Fehler" aktiv ist. Es wird jedoch angezeigt, wenn der neue Filter "Handled" aktiv ist.

revoked error not visible when "errors" filter is active

revoked error visible when "Handled" filter is active

+4

Danke! Ich denke, ich muss mehr über Versprechungen erfahren. – marlar