没有兑现的承诺没有捕获阻止(未处理的拒绝)javascript

时间:2018-08-21 07:53:46

标签: javascript vue.js es6-promise

我用VueJs Javascript编写了项目,并希望在控制台消息中查看我的任何Promises是否未实现且没有catch块。

我尝试过这样的事情

Promise.reject("error!");
window.addEventListener('unhandledrejection', event => {
  console.log('i am error')
});

但没有成功。 还有其他方法吗?或者我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

unhandledrejection用于当前仅在Chrome中实现的本机Promises。如果您还想在其他浏览器中记录这些错误,则需要使用诸如bluebird的另一种实现覆盖本机Promise:

Promise.reject("error!");
window.addEventListener('unhandledrejection', event => {
  console.log('i am error')
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/bluebird/3.5.1/bluebird.js"></script>

您需要确保将bluebird作为第一个脚本加载。

bluebird: Error management configuration