2016-06-30 2 views
1

Можно ли получить доступ к трассировке стека с событием «unhandledrejection»?Доступ к стеку ошибок отказа от неподходящего обещания

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()

ответ

1

Если передать объект ошибки в качестве причины отказа, то вы будете иметь доступ к стеку.

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 
) 
Смежные вопросы