2016-06-30 23 views
1

Ist es möglich, mit dem Verheißungs-Event "unhandledrejection" auf die Stack-Trace zuzugreifen?Zugreifen auf Uncaught Promise Rejection Error Stack

self.addEventListener("error", function(event) { 
 
console.log(event.error.stack) 
 
event.preventDefault() 
 
}) //works 
 

 
self.addEventListener("unhandledrejection", function(event) { 
 
console.log(event.error.stack) 
 
event.preventDefault() 
 
}) //fails 
 

 
Promise.reject()

Antwort

1

Falls Sie ein Error-Objekt als Ablehnungsgrund passieren dann haben Sie Zugriff auf den Stapel haben.

self.addEventListener("error", function(event) { 
    console.log(event.error.stack) 
    event.preventDefault() 
}) //works 

self.addEventListener("unhandledrejection", function(event) { 
    console.log(event.stack) 
    event.preventDefault() 
}) //works 

Promise.reject(
    new Error('rejected') // here's the magic 
)