首页 > 解决方案 > Node.js 命令行脚本有时不会终止

问题描述

我有一个带有异步主方法的节点 js 脚本。有时脚本终止正常,有时它挂起。

const main = async () => {
    let updates = []
    // ... add a bunch of promises to updates
    await Promise.all(updates)
} 

main()

有谁知道为什么这个脚本有时会挂起?尽管它似乎已经运行完成,但它并没有终止。

标签: node.jsbabeljsbabel-node

解决方案


因为您的函数是async,所以您需要在它完成时显式终止它:

main().then(() => process.exit())

推荐阅读