콜백 함수 (findOne의 마지막 매개 변수에있는 함수)를 사용하면서 결과를 반환하기 위해 콜백 함수를 사용하는 것이 좋습니다.
...
myFunction(params, function(err,result){
//do something with the result)
}
OBS1 : 당신이 좋아하는 다른 장소에서 "myFunction이"를 호출 할 수 있습니다 그리고
function myFunction(myParams, callback){
_dataDictionary.findOne(myParams, function(err,result){
return callback(err,result);
});
}
: 같은
이 결과를 얻으려면, 당신은 뭔가를 할 수있는 PARAMS는 다른 함수 경우 , "못생긴"방법은 일반적으로 "반 패턴"인 중첩 콜백을 사용하는 것입니다.
function myFunction(myParams, callback){
_dataDictionary.findOne(myParams, function(err,result1){
_anotherAsyncFunction(result1.params, function(err,result2){
//do something with result2 and callback it.
});
});
}
OBS2 : 당신은 라이브러리 등 async "폭포"방법 또는 bluebird Promise Library "다음"방법을 사용하여이 안티 패턴을 피할 수 있습니다.
아마도 ... 비동기 콜백을 사용하고 있습니다. – Hydro
어딘가에 함수를 호출 했습니까? – Marciano
이 코드는 Model.observe ('액세스', 함수 (ctx, next, cb) { var_dataDictionary = loopback.findModel ('dataDictionary'); found = _dataDictionary.findOne (findByModelNameQuery ... , 함수 (ERR, 결과)) { 경우 (결과) { (result.record) { 찾은 경우 = TRUE 한다} else { 발견 = 거짓 } } 복귀 발견} 찾은 값을 기준으로 query.where를 설정하십시오. ..... ctx.query.where = query.where } next(); }}); –