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
}

questionAnswers(2)

yourAnswerToTheQuestion