이 문제와 관련된 적절한 용어를 찾을 수 없어서 질문을하기로 결정했습니다.데이터를 콜백 함수에 전달하는 가장 좋은 방법은 무엇입니까?
var methods = {
login: function(callback){
$someCustomService
.login() // This returns $http
.success(function(data){
// callback(true, data); --- doing this without using 'return' also works
return callback(true, data);
})
.error(function(data){
return callback(false, data);
})
}
};
전화 기능 :
$anotherCustomService.login(function(success, data){
if(success){
alert('Success');
}else{
alert('Fail');
}
console.log(data);
});
잘 작동하지만, 내가 return
를 사용하지 않고 callback(true, data);
로 변경 한 경우 그것은 또한 작동 return callback(true, data);
라인
나는이 기능을 가지고있다. 이제는 무엇을 사용해야할지 혼란 스럽습니다.
편집
BTW, 나는이 물어 주된 이유는,이 때문에입니다 :
angular.noop
function foo(callback) {
var result = calculateResult();
(callback || angular.noop)(result);
}
내가 자바 스크립트 기능을 코딩 먼저 배운 모든 return
을 사용하지 않은 .
이해가 안되는 부분은 무엇입니까? 'return '이 무엇을 의미하는지 묻고 있습니까? – SLaks
'$ someCustomService'에 대한 코드가 있습니까? 그렇다면 호출 할 때 콜백의 반환 값에 관심이 있습니까? API 의미론의 문제이므로 스타일에 관한 문제가 아닙니다. –