我有一个mat-checkbox
,它也是移动版本的一部分。
当我们有两个独立的部分时,一个用于桌面,一个则用于移动。桌面<mat-checkbox>
可以正确地选择和取消选择,而当我们单击时,移动选项会触发桌面版本复选框,而不仅仅是选择和取消选中移动版本。
如何让<mat-checkbox>
分别独立处理这两个事件?
HTML:
<div class="class-a">
<label
[ngClass]="{'class-b': valueTrigger}">
<mat-checkbox
class="checkbox"
[(ngModel)]="valueTrigger"
(input)="toggleHasTrigger($event.target.checked)"
id="test"
type="checkbox"
name="testing" ngDefaultControl
>
I am here!
</mat-checkbox>
</label>
</div>
TS:
initValueTrigger(): void {
this.valueTrigger = !this.asset.Unchecked;
this.toggleHasTriggerEvent.emit(this.valueTrigger);
}
toggleHasTrigger(toggleValue: boolean): void {
this.asset.Unchecked = !toggleValue;
this.valueTrigger = toggleValue;
this.toggleHasTriggerEvent.emit(this.valueTrigger);
}
您可能需要为移动和web视图的复选框提供单独的ID
例如:test_web and test_mobile
在上面的答案之后,我使用了for
而不是id
,以使复选框具有单独的ID:
for="test"