Angular 停止mat的事件传播选择mat内复选框

Angular 停止mat的事件传播选择mat内复选框,angular,angular-material,event-handling,Angular,Angular Material,Event Handling,我有一个在里面。当发生更改时,它还会切换,我不希望发生这种情况 我已尝试使用“$event.stopPropagation()”,但它不起作用。有没有办法解决这个问题 <mat-checkbox [(ngModel)]="myCheckboxModel" (change)="onChangeFunction()"> <mat-form-field> <mat-select [(ngModel)]="mySelectModel">

我有一个
里面。当
发生更改时,它还会切换
,我不希望发生这种情况

我已尝试使用“$event.stopPropagation()”,但它不起作用。有没有办法解决这个问题

<mat-checkbox [(ngModel)]="myCheckboxModel" (change)="onChangeFunction()">
    <mat-form-field>
        <mat-select [(ngModel)]="mySelectModel">
            <mat-option value="1">1</mat-option>
            <mat-option value="2">2</mat-option>
        </mat-select>
    </mat-form-field>
</mat-checkbox>

1.
2.

我对嵌套的
垫选择列表
项也有同样的问题

这对我有用

selectionChange(event: MatSelectionListChange)
{
    window['event']?.stopPropagation();
}
我今天刚刚发现
window.event
,但在这个确切的上下文中,这并不容易,因为angular没有给出底层事件


如果您正在使用SSR,请确保不要以编程方式调用它,因为未定义
窗口

也许您可以使用CSS防止在有人单击选择复选框时触发选择复选框。。。您向哪个元素添加了
$event.stopPropagation()
?这适用于自动完成,也适用于选择:。对于复选框,您可能需要
$event.preventDefault()
@g-tranter在
上添加
$event.stopPropagation()
以阻止单击事件冒泡到上述复选框。工作得很有魅力!谢谢!