[英]Node js promise result use in other function
我是 node js 的新手,我需要我的第一個查詢的結果作為另一個函數中的參數。 這是我的模型:
return new Promise((resolve, reject) => {
var sql = "SELECT * FROM table";
db.query(sql,
(err, result) => {
if (err) {
return reject(err)
}
return resolve(result)
});
});
我需要這樣的東西
return new Promise((resolve, reject) => {
var sql = "SELECT * FROM table";
db.query(sql)
.then(rows.map(row =>{
return arr[row.id] = this.getProduct(row.id);
}))
})
使用異步/等待。
您可以創建一個generic
queryDb 函數,該函數將調用 db 並為任何查詢獲取結果。
mainFunction
將等待await
完成並獲取您可以在其下方使用的結果。
代碼也看起來干凈且易於理解。 像這樣的東西,
async function mainFunction(){
try{
const query = `INSERT INTO aaa xxxxxx`;
const result = await queryDb(query);
//do whatever with the result;
this.getProduct(result);
}
catch(e){
//catch error
}
}
function queryDb(sql){
return new Promise( ( resolve, reject ) => {
db.query(sql,
(err, result) => {
if (err) {
return reject(err)
}
return resolve(result)
});
})
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.