在 an中,我們有一個復選框,在我們的按鈕起作用Angular reactive form之前需要選中它。save現在,我們有一個新要求,即只在某些區域顯示此復選框,這很容易通過一個environment屬性和一個*ngIf復選框來完成。
但是,我如何有條件地使該save按鈕的[disabled]屬性不關心復選框?
我的組件.component.html
<div *ngIf="isMyCheckboxRegion">
<input [formControl]="myCheckbox" type="checkbox" id="my-checkbox">
<label for="my-checkbox">Please check this box</label>
</div>
<div>
<button validationgroup="SaveMyForm"
(click)="onSubmit()" [disabled]="anotherFormGroup.invalid || myCheckbox.invalid">Save</button>
</div>
我的組件.component.ts
import { environment } from 'src/environments/environment';
export class myComponent implements OnInit {
public isMyCheckboxRegion = environment.isMyCheckboxRegion;
public myCheckbox = FormControl('', Validators.requiredTrue);
}
uj5u.com熱心網友回復:
嘗試Validators.requiredTrue有條件地設定:
public myCheckbox = FormControl('', this.isMyCheckboxRegion ? Validators.requiredTrue : undefined);
由于有條件地應用驗證器,myCheckbox.invalid因此應該false與復選框的值無關。
選擇:
您還可以isMyCheckboxRegion在 HTML 中使用:
<button
validationgroup="SaveMyForm"
(click)="onSubmit()"
[disabled]="anotherFormGroup.invalid || (isMyCheckboxRegion && myCheckbox.invalid)"
>Save</button>
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/482980.html
標籤:javascript 有角度的 打字稿 形式 角反应形式
