@orhankutlu가 제안한 해결책은 잘 작동합니다.
약속을 사용하는 다른 해결책을 제공 할 것입니다. 사용자는 프로그래밍 스타일에 따라이 두 솔루션 중 하나를 선택할 수 있습니다.
솔루션 사용하여 약속 :
function getEvents() {
return new Promise(function(resolve, reject){
dbCollection['e'].find({}, function(error, results) {
if (error) return reject(error);
var x = [];
results.forEach(function(y){
x.push(y);
});
// forEach() is a blocking call,
// so the promise will be resolved only
// after the forEach completes
return resolve(x);
});
});
};
호출 getEvents() :
getEvents().then(function(result){
console.log(result); //should print 'x'
}).catch(function(err){
// Handle error here in case the promise is rejected
});
내가 콜백을 사용하고 약속을 사용하여, 즉 접근 방법을 모두 시도하는 것이 좋습니다 것입니다. 희망 당신은 그것을 유용하게 찾을 수 있습니다!
돌아 오는 데 콜백 전략을 사용하고 몽구스 문제를 해결하기 위해 어떤 약속 관리를해야합니다. – Iceman
@ JJ9 질문에 답이 나온다면 열어 두지 마십시오. – orhankutlu