obter o elemento original do ng-click

Eu tenho uma lista de itens na minha opinião com o ng-click anexado a eles:

 
  • {{team.name}}

Estou manipulando os events de clique na function foo na minha diretiva, passando $event como referência para o object que foi clicado, mas estou recebendo uma referência à tag img , em vez da tag li . Eu então tenho que fazer coisas assim para obter o li :

 $scope.foo = function($event, team) { var el = (function(){ if ($event.target.nodeName === 'IMG') { return angular.element($event.target).parent(); // get li } else { return angular.element($event.target); // is li } })(); 

Existe uma maneira simples de obter a referência para o elemento que ng-click está vinculado, sem fazer operações DOM na minha diretiva?

Você precisa de $event.currentTarget vez de $event.target .

Não é uma resposta direta a esta pergunta, mas sim ao “problema” de $event.currentTarget aparentemente, ser definido como null.

Isso se deve ao fato de que console.log mostra objects mutáveis ​​profundos no último estado de execução, não no estado em que console.log foi chamado.

Você pode verificar isso para obter mais informações: Chamadas consecutivas para console.log produzem resultados inconsistentes