将来,未处理的承诺拒绝将以非零退出代码终止Node.js进程。
我的管道应该在失败时通过并部署了在启动时崩溃的版本。如果Node.js使用非零退出代码退出,则管道将失败,并且不会部署不良版本。
是否有一种方法可以使Node.js在遇到未处理的承诺拒绝时以非零的退出代码退出,不需要我等待未来?
答案 0 :(得分:2)
是的,您可以使用the unhandledRejection
event on the process
object:
process.on('unhandledRejection', (reason, p) => {
console.error('Unhandled Rejection at:', p, 'reason:', reason)
process.exit(1)
});
答案 1 :(得分:2)
对于node
12及更高版本:
node --unhandled-rejections=strict
答案 2 :(得分:0)
我喜欢通过环境变量设置这些选项:
export NODE_OPTIONS="--unhandled-rejections=strict"