angular - 如何使用 Angular 6+ 表单生成器验证器?
问题描述
我正在尝试使用这个 Angular 6+ 表单指令验证器:CheckboxRequiredValidator。我不明白如何使用它。在选中复选框之前,该表单不应有效。
HTML
<form [formGroup]="DeleteForm" (ngSubmit)="deleteEmployee(DeleteForm)">
<div class="container">
<!-- New Password -->
<div class="row mt-2 justify-content-center">
<div class="col">
<span>Delete</span>
<br />
<kendo-switch formControlName="DeleteInd" [onLabel]="'Yes'" [offLabel]="'No'" required >
</kendo-switch>
</div>
</div>
<!-- Submit -->
<div class="row mt-2 justify-content-center">
<div class="col">
<button kendoButton [disabled]="!DeleteForm.valid" [primary]="true" type="submit">Submit</button>
</div>
</div>
</div>
</form>
打字稿
import {
FormGroup,
FormBuilder
} from '@angular/forms';
public DeleteForm: FormGroup;
constructor(
private formBuilder: FormBuilder,
) {
this.DeleteForm = this.formBuilder.group({
DeleteInd: false,
EmployeeID: 999,
TerminateDate: moment().format("YYYY-MM-DD"),
}, {
validator: CheckboxRequiredValidator // this is wrong
});
解决方案
我会尝试这样的事情:
import {
FormGroup,
FormBuilder,
Validators
} from '@angular/forms';
public DeleteForm: FormGroup;
constructor(private formBuilder: FormBuilder) {
this.DeleteForm = this.formBuilder.group({
...
deleteInd: [false, Validators.required]
});
有关更多信息,请参阅角度文档:https ://angular.io/guide/reactive-forms ctrl + f 并输入验证。在那里你应该找到必要的信息。
最好的祝福,
萨加特
推荐阅读
- node.js - Async/Await In NodeJS
- swift - 更新数据源并调用reloadData后,cellForItem中的数据源不变
- scylla - 是否有用于 scylla nodetool 的 API?
- android - Capacitor LocalNotifications - Android 上没有 toast 弹出窗口?
- c - 写入通过结构传递给线程的 mmap 输出 (C)
- c# - SQLite 选项未出现在从模型生成数据库中
- python - 为什么当我运行 series.replace 时 np.nan 会将我的列转换为浮点数
- python-3.x - 将 boto 客户端参数作为变量传递
- python - 如何从一个文件夹中读取多个txt文件
- angular - Angular 生命周期钩子中的数据流