Angular.org 문서 에서도 모든 곳에서 검색을 시도했지만 구현에 대한 자세한 설명을 찾을 수 없습니다. 설명 할 수 있다면 큰 도움이 될 것입니다.
Angular.org 문서 에서도 모든 곳에서 검색을 시도했지만 구현에 대한 자세한 설명을 찾을 수 없습니다. 설명 할 수 있다면 큰 도움이 될 것입니다.
답변:
angular.noop는 일부 함수를 매개 변수로 전달해야 할 때 자리 표시 자로 사용할 수있는 빈 함수입니다.
function foo (callback) {
// Do a lot of complex things
callback();
}
// Those two have the same effect, but the later is more elegant
foo(function() {});
foo(angular.noop);
noop
함수를 비워 두는 것보다 호출하면 어떤 이점이 있습니까? 미학, 성능 또는 다른 것?
angular.noop
매번 새로운 익명 함수를 선언하는 대신 항상 동일한 빈 함수를 재사용하므로 미적으로 더 즐겁고 좋은 방법 입니다. 성능면에서 코드 angular.noop
가라는 이름의 빈 함수이므로 차이가 없습니다 noop
.
콜백을 기대하는 함수를 작성할 때 매우 유용합니다.
예:
function myFunction(id, value, callback) {
// some logic
return callback(someData);
}
위의 함수는 세 번째 인수를 지정하지 않고 호출되면 오류를 반환합니다. myFunction(1, 'a');
예 (사용 angular.noop
) :
function myFunction(id, value, callback) {
var cb = callback || angular.noop; // if no `callback` provided, don't break :)
// some logic
return cb(someData);
}
typeof callback === 'function' && callback();
. 훨씬 더 고급 스럽습니다 ^^. angular.noop
그래도 사용하지 않습니다 .
아무 작업도 수행하지 않는 기능입니다. 이것은 다음과 같은 상황에서 유용합니다.
function foo(y) {
var x= fn();
(y|| angular.noop)(x);
}
기능적인 스타일로 코드를 작성할 때 유용합니다.
//do nothing on the success callback, hence replacing the success callbck function with angular.noop()
$ scope.contacts = Contacts.query (angular.noop, function (response) {Window.myresp = response; $ scope.displayError (response); console.log ( "bad boy, listContacts failed ");});
*이 답변은 u가 각도의 초보자가 아니라고 가정합니다.
Angular.noop는 경우에 따라 자리 표시 자로 사용할 수있는 빈 함수입니다.
예를 들면 :
api를 여러 번 호출하고 하나의 promise를 반환하는 q.all을 사용하고 있다고 가정 해보십시오. 이러한 호출 중 일부가 실패하지만 실패하지 않은 호출을 처리해야하는 경우 호출을 잡을 때 angular noop을 api 호출에 대한 콜백으로 사용하십시오. angular noop을 사용하지 않으면 q.all은 한 번의 호출이 실패하면 모든 것을 거부합니다.
Q.all (somecall.catch (angular.noop), anothercall) .then (resolve result [0] 및 result [1])
호출이 실패하면 Angular는이를 무시하고 다른 호출을 수행합니다 (그러나 u는 여전히 첫 번째 해결 된 결과에 대해 정의되지 않습니다)
내가 도왔 으면 좋겠어
var result = (callback || angular.noop)(params)
할 수있는 가장 짧은 방법
var result = typeof callback === 'function' && callback(params);
콜백 var가 함수가 될 것이라는 점을 고려
공식 문서를 원하시면 여기에 링크가 있습니다. 매우 간단합니다. 링크에서 현재 문서를 붙여 넣었습니다.
작업을 수행하지 않는 기능입니다. 이 함수는 함수 스타일로 코드를 작성할 때 유용 할 수 있습니다.
function foo(callback) {
var result = calculateResult();
(callback || angular.noop)(result);
}