AngularJS - vários ng-click - evento borbulhando
No exemplo a seguir:
<li ng-repeat="item in items" ng-click="showItem(item)">
<h3>{{item.title}}</h3>
<button ng-click="remove(item)">Remove</button>
</li>
Quando clico no botãoshowItem()
também é invocado devido a borbulhamento do evento. Eu sei que eu posso usar$event
assistir por$event.currentTarget
e fazer$event.stopPropagation()
etc, mas isso é muito feio.
Btw. Eu não quero parar a propagação nobutton
(No meu caso obutton
é umtwitter bootstrap
dopdown/button
- Este é apenas um exemplo)
Como eu paroshowItem()
de ser chamado quando clico noremove
botão?
EDITAR A correção feia seria ter:
function remove(item,$event){
$event.originalEvent.prevent = true;
// rest of the code
}
function showItem(item,$event){
if($event.originalEvent.prevent)return;
// rest of the code
}