سلام . مقدار points داخل لاگ اول به درستی نمایش داده میشه اما داخل لاگ دوم ی ابجکت خالی بهم نشون میده سوال اینجاس که چجوری بهش دسترسی داشته باشم در خارج از callback function ؟؟؟
crypto.find({ "date": moment().format("YYYY-MM-DD hh:") + '00' }, function (err, result ) {
if (result.length > 0) {
result.forEach(signal => {
++x
points[x] = {};
for (let i = 0; i < 4; i++) {
if (i == 1) {
let currentPrice = self.getCurrentPrice(moment(signal.date).add(i, 'hours').format("YYYY-MM-DD hh:mm"), );
points[x][i] = { currentPrice: currentPrice }
} else if (i == 2) {
let currentPrice = self.getCurrentPrice(moment(signal.date).add(i, 'hours').format("YYYY-MM-DD hh:mm"), );
points[x][i] = { currentPrice: currentPrice }
} else if (i == 3) {
let currentPrice = self.getCurrentPrice(moment(signal.date).add(i, 'hours').format("YYYY-MM-DD hh:mm"), );
points[x][i] = { currentPrice: currentPrice }
}
}
});
}
console.log(points); // loged true value
return points;
}).sort({ createdAt: -1 })
console.log(points); // loged {} empety object
با سلام
تابعی که این دستور crypto.find رو داخلش نوشتید async کنیدش و بعد قبل این دستور بزنید await و بعدش
قبل این crypto.find دستور
بزنید let point;
.sort({ createdAt: -1 }).then((result)=>{
//حالا اینجا عملیات رو انجام بدید
//نتیجه رو بریزید داخل point
})
//حالا به point دسترسی دارید
//تابعی که داخلش این دستورات هست حتما باید async باشه
let point=null;
await crypto.find({ "date": moment().format("YYYY-MM-DD hh:") + '00' }).sort({ createdAt: -1 }).then((result)=>{
if (result.length > 0) {
result.forEach(signal => {
++x
points[x] = {};
for (let i = 0; i < 4; i++) {
if (i == 1) {
let currentPrice = self.getCurrentPrice(moment(signal.date).add(i, 'hours').format("YYYY-MM-DD hh:mm"), );
points[x][i] = { currentPrice: currentPrice }
} else if (i == 2) {
let currentPrice = self.getCurrentPrice(moment(signal.date).add(i, 'hours').format("YYYY-MM-DD hh:mm"), );
points[x][i] = { currentPrice: currentPrice }
} else if (i == 3) {
let currentPrice = self.getCurrentPrice(moment(signal.date).add(i, 'hours').format("YYYY-MM-DD hh:mm"), );
points[x][i] = { currentPrice: currentPrice }
}
}
});
}
console.log(points); // loged true value
//return points;
}
)
console.log(points); // loged {} empety object
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟