这个过程是 Node.js 中的全局对象,它跟踪并包含在机器上特定时间执行的特定 node.js 进程的所有信息。
每当未处理承诺拒绝时,就会发出 unhandledRejection 事件。 NodeJS 警告控制台 UnhandledPromiseRejectionWarning 并立即终止进程。 NodeJS 进程全局有一个 unhandledRejection 事件。当 unhandledRejection 发生并且承诺链中没有处理程序来处理它时,会触发此事件。
用法:
process.on("unhandledRejection", callbackfunction)
参数:此方法采用以下两个参数。
- unhandledRejection:它是流程中的emit事件的名称。
- callbackfunction:它是事件的事件处理程序。
返回类型:此方法的返回类型为void。
范例1:注册 unhandledRejection 侦听器的基本示例。
index.js
// The unhandledRejection listener
process.on('unhandledRejection', error => {
console.error('unhandledRejection', error);
});
// Reject a prromise
Promise.reject('Invalid password');
使用以下命令运行index.js文件:
node index.js
输出:
unhandledRejection Invalid password
范例2:为了证明 unhandledRejection 侦听器仅在您的链中没有承诺拒绝处理程序时才会执行。
index.js
// The unhandledRejection listener
process.on('unhandledRejection', error => {
// Won't execute
console.error('unhandledRejection', error);
});
// Reject a prromise
Promise.reject('Invalid password')
.catch(err => console.error(err))
使用以下命令运行index.js文件:
node index.js
输出:
Invalid password
注意:如果您使用侦听器或消费者函数处理 unhandledRejection,则控制台的默认警告(上述示例中的 UnhandledPromiseRejectionWarning)将不会打印到控制台。
参考: https://nodejs.org/api/process.html#process_event_unhandledrejection
相关用法
- Node.js process.nextTick()用法及代码示例
- jQuery UI dialog create(event, ui)用法及代码示例
- jQuery UI dialog close(event, ui)用法及代码示例
- jQuery UI dialog resizeStart(event, ui)用法及代码示例
- jQuery UI dialog dragStop(event, ui)用法及代码示例
- jQuery UI dialog dragStart(event, ui)用法及代码示例
- jQuery UI dialog resize(event,ui)用法及代码示例
- jQuery UI dialog open(event,ui)用法及代码示例
- jQuery UI dialog focus(event,ui)用法及代码示例
- Node.js Process message用法及代码示例
- Node.js Process beforeExit用法及代码示例
- Node.js Process warning用法及代码示例
- Node.js Process uncaughtException用法及代码示例
- Node.js Process multipleResolves用法及代码示例
- Node.js Process exit用法及代码示例
注:本文由纯净天空筛选整理自braktim99大神的英文原创作品 Node.js Process unhandledPromiseRejection Event。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。