我有一段代码:
db.dropDb()
.then(() => {
console.log('Success.');
})
.catch(err => {
console.error(err);
});
它可以正常工作。
但是,我被要求将其转换为异步/等待模型。
我当前的实现是这样的:
(async () => {
try {
await db.dropDb();
console.log('Success!');
} catch (e) {
console.log(e);
process.exit(1)
}
})();
看起来像它可以工作,但是应用程序挂起并且在操作完成后不会退出。
我从这里去哪里?
答案 0 :(得分:-1)
尝试一下:
async function dropDBfunc() {
try {
await db.dropDb();
console.log('Success!');
} catch (e) {
console.log(e);
}
};
答案 1 :(得分:-1)
实际上,我自己稍后在代码中犯了一个错误:我错过了退出功能。 :facepalm:
第二个示例中的async / await东西很好用。
答案 2 :(得分:-3)
async function myFirstAsyncFunction() {
try {
const fulfilledValue = await promise;
}
catch (rejectedValue) {
// …
}
}