La forma angular para verificar la forma se toca y no funciona con la casilla de verificación. !newDeviceGroup.touched = true a pesar de que la casilla de verificación cambia su valor cuando hago clic. ¿No estás seguro de por qué?
<form [formGroup]="newDeviceGroup" (ngSubmit)="onSubmit()"> <div class="row"> <div class="col"> <label class="chk-container" for="isNewDevice" ><span class="chk-label">Device is work</span> <input type="checkbox" id="isNewDevice" name="isNewDevice" class="isNewDevice" [value]="isDeviceWork" [checked]="isDeviceWork == true" (change)="onCheckChange($event)" /> <span class="checkmark"></span> </label> </div> </div> <button type="submit" class="btn btn-primary" id="btnSubmit" [disabled]="!newDeviceGroup.touched"> </form>Debe configurar FormGroup como tocado a través de AbstractControl.markAsTouched() .
onCheckChange(event: any) { this.newDeviceGroup.markAsTouched(); }