В следующем примере:
<li ng-repeat="item in items" ng-click="showItem(item)">
<h3>{{item.title}}</h3>
<button ng-click="remove(item)">Remove</button>
</li>
Когда я нажимаю кнопку showItem()
, также вызывается из-за пузырька события.
Я знаю, что я могу использовать $event
для просмотра $event.currentTarget
и делать $event.stopPropagation()
и т.д., Но это очень уродливо.
Btw. Я не хочу останавливать распространение на button
(в моем случае button
есть twitter bootstrap
dopdown/button
- это только пример)
Как остановить showItem()
от вызова вызова, когда я нажимаю кнопку remove
?
ИЗМЕНИТЬ Уродливое исправление было бы иметь:
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
}