Как остановить распространение события при вызове функции при смене mat-checkbox? - PullRequest
0 голосов
/ 29 августа 2018
<mat-checkbox (change)="handleProductClick(children, $event)"  [(ngModel)] = "children.selected"
[name]="children.grpId" [id]="children.id"></mat-checkbox>

handleProductClick(selectedProd : Product, event: any)
{
  event.stopPropagation();
}

Если я использую функцию щелчка вместо изменения, она работает нормально. Хотя я не могу использовать клик. Я должен придерживаться изменений. Есть ли способ вызвать stopPropagation из функции изменения? Если нет, что еще я могу сделать, чтобы остановить распространение события?

1 Ответ

0 голосов
/ 30 августа 2018

Я получил это работает. Пришлось использовать оба клика и поменять на флажок. Я пробовал это раньше. Единственным отличием было то, что я вызывал функцию в методе click, и он никогда не вызывался. Если вы вызываете метод $ event.stopPropagation для метода click в шаблоне, он работает хорошо. странный. Ответ ниже решил мою проблему. Угловой 2 предотвращает щелчок по родительскому элементу при щелчке по дочернему элементу

<mat-checkbox (change)="handleProductClick(children, $event)"[checked]="children.selected" (click)="$event.stopPropagation()" [name]="children.grpId" [id]="children.id"></mat-checkbox>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...