超級基本問題:我是nodeJS以及Promises的新手,對我是否正確使用resolve()感到好奇。resolve()in manual bluebird promise
_queryHelper(query, fields)
{
return new Promise((resolve, reject) => {
connector.query(query, fields, (error, results) => {
if(error)
{
connector.rollback(() => {
reject(error);
});
}
if(results)
{
return resolve(results);
}
resolve();
});
});
};
// later on doing something like:
this._queryHelper('SELECT * FROM secretTable WHERE `generatedURL` = ?', stringIn)
.then((resultsIn) => {
if(!resultsIn || resultsIn.length === 0) {
// do somthing
}
else {
// do something else
}
});
所以現在的問題是直接,當我使用。那麼(),我在汩汩流出從當初的諾言查詢正確的結果?基本上我試圖確定我的原始'返回解決(結果)'實際上去,以便我可以訪問前述'結果'
編輯:當從_queryHelper調用解析(結果),我的理解是正確的'results'作爲'resultsIn'傳遞給我。
謝謝,那大部分是我之後的事情,想確保我在我的決心之間正確地鏈接(re sults)和我的.then(結果),這聽起來好像我是。感謝您的合理收穫! – ItsScience
由於您在這裏看起來像是新手,如果下面的答案中的任何一個回答了您的問題,那麼您可以通過單擊最佳答案旁邊的綠色複選標記來向社區表明該問題。這也將使您在堆棧溢出中獲得一些聲譽點,以遵循正確的過程。 – jfriend00