geturls(data,function(urls){
var data = {
"data": [
{ "userProfile": userP },
{ "urls": urls }
]
};
res.send(data);
});
function getUrls(data,done){
links = new Array();
for (var i=0; i<data.length; i++){
user = data[i]
Url.find({where:{data.id}}).success(function(url){
links.push({
"url": ur.text,
"date": data.syncedTime
});
if (urls.length == data.length){
done(links);
}
});
}
}
私のコードの問題は次のとおりです。
配列に収集されたデータが親配列の長さと等しくなると、コールバックを介して応答を返します。これは明らかに非常に危険で、洗練されたソリューションではありません。たとえば、Url データベースから .failure を取得すると、urls.length は data.length と等しくなりません。だから、私はこれをどうするかについて少し混乱しています。何か助けはありますか?