Eu tentei pesquisar em todos os lugares, mesmo na documentação do Angular.org , mas não consegui encontrar nenhuma explicação detalhada sobre a implementação. Seria extremamente útil se alguém pudesse explicar.
javascript
angularjs
Áspero
fonte
fonte
Respostas:
angular.noop é uma função vazia que pode ser usada como espaço reservado quando você precisa passar alguma função como um parâmetro.
fonte
noop
vez de apenas deixar a função em branco? Estética, performance ou outra coisa?angular.noop
pois você sempre reutiliza a mesma função vazia (em vez de declarar uma nova função anônima toda vez). Em termos de desempenho, não faz diferença, pois o código paraangular.noop
é apenas uma função vazia nomeadanoop
.Acho extremamente útil ao escrever uma função que espera um retorno de chamada.
Exemplo:
A função acima retornará um erro, quando for chamada sem especificar o terceiro argumento.
myFunction(1, 'a');
Exemplo (usando
angular.noop
):fonte
typeof callback === 'function' && callback();
. Muito mais elegante ^^. Não usandoangular.noop
embora.É uma função que não executa nenhuma operação. Isso é útil em situações como esta:
É útil ao escrever código no estilo funcional
fonte
//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 falhou ");});* esta resposta assume que você não é um iniciante em angular
Angular.noop é uma função vazia que pode ser usada como marcador em alguns casos
por exemplo:
Imagine que você esteja usando q.all, que faz várias chamadas para a api e retorna uma promessa. Se algumas dessas chamadas falharem, mas você ainda precisar lidar com aquelas que não falharam, use o angular noop como um retorno de chamada para as chamadas de API quando você capturar as chamadas. Se você não usar o noop angular, q.all rejeitará tudo se uma chamada falhar.
Q.all (somecall.catch (angular.noop), anothercall) .then (resolver resultado [0] e resultado [1])
Se uma chamada falhar, o Angular irá ignorar isso e realizar outra chamada (mas você continuará indefinido para o primeiro resultado resolvido)
Espero ter ajudado
fonte
É a maneira mais curta de fazer
Levando em consideração que o callback var será uma função
fonte
Se você quiser a documentação oficial aqui está o link . É muito simples. Também colei a documentação atual do link.
Uma função que não executa nenhuma operação. Esta função pode ser útil ao escrever código no estilo funcional.
fonte
Truque: você também pode usá-lo para adicionar um ternário a um
ng-click
atributo:Até eu descobrir que você poderia usar ng-click = "variable && doSomething ()" `
fonte
ng-click="(variable) ? doSomething() : true"
também funcionaria