2
使用mysql2/promise庫時,我的一個對象部分包含來自先前SELECT語句的未解決的承諾。在MySQL之前解析承諾對象INSERT
插入時,我得到一個不正確的整數值錯誤消息,因爲承諾尚未解決。什麼是解決包含的承諾的優雅方式?
let insertObj = {
author: this.authorId // unresolved promise #1
recipient: this.recipientId // unresolved promise #2
// ... more promises here
message: this.messageBody
}
let conn = this.pool.getConnection();
return conn.then((conn) => {
const res = conn.query("INSERT INTO posts SET ?", [insertObj]);
conn.release();
return res
});
短期和優雅。出於好奇,我會如何去使用定期承諾? – ddillert
你對常規承諾有什麼意義? 'this.authorId'不是一個普通的承諾?或者你的意思是:「我怎樣才能做到這一點,而不是'async/await',而用'then'?」 – trincot
是的,「我怎樣才能做到這一點,而不是異步/等待,但隨着時間」。我試圖瞭解async/await在底層做了些什麼。 – ddillert