我是nodejs.js的新手,很難在nodejs級別處理回調。我有這樣的代碼,處理nodejs中的異步回調
getItems(request,function(jsonObject){
var itemData={};
var itemDetails=new Array();
for(var i=0;i < jsonObject.length;i++){
getItemDetails(jsonObject[i].value.item_id,function(jsonObject){
itemDetails.push(jsonObject);
});
}
itemData["itemDetails"]=itemDetails;
response.contentType("application/json");
response.send({"data":itemData});
});
在執行上面的代碼中,for循環與從出方法getItemDetails和響應發送到客戶端獲得回調繼續。我的要求是循環將等待,直到從getItemDetails獲得回調,然後響應應該發送。 我試着用process.nextTick(),但我無法找到我必須使用process.nextTick()..請有人提供建議。
在此先感謝。
更改代碼後,我仍然面臨同樣的問題。至少它不檢查if條件,直接改變i值並繼續進一步的陳述。 – Aruna
我的不好,它實際上是'--itemsLeft',現在就試試。 – alessioalex
謝謝Alessioalex。現在正在工作。 – Aruna