通过点击嵌套 & $event.stopPropagation()

Nested ng-click & $event.stopPropagation()

我正在尝试取消嵌套 ng-click 事件中的传播。

$scope.cancel = function($event){
   $event.stopPropagation();
}

相关查看代码:

<tbody>
  <tr ng-click="goTo(1)">
    <td class="col-md-1">{{ client.code }}</td>
    <td class="col-md-5">{{ client.name }}</td>
    <td class="col-md-2">{{ client.telephone }}</td>
    <td class="col-md-2">{{ client.fax }}</td>
    <td class="col-md-2"><a href="mailto:{{client.email}}" ng-click="cancel($event)">{{client.email}}</a></td>
  </tr>
</tbody>

这是一个笨蛋:http://plnkr.co/edit/dxgfK41Dp1Gs2DCmeFcw?p=info

为什么不起作用?

它不起作用,因为如果您不从视图传递 $event,则 $event 是未定义的:

将此添加到您的视图中:

<td class="col-md-2"><a href="mailto:{{client.email}}" ng-click="cancel($event)">{{client.email}}</a></td>

这是传播停止后更新的 plunkr:http://plnkr.co/edit/ywvPcO01C0fgzvpxRnf9?p=info