Tho*_*ler 6 validation html5 typescript angular2-forms angular
看看Angular 2(beta.0)中模板驱动与模型驱动表单的优缺点,我想知道如何使用模板驱动表单将自定义验证附加到简单的文本输入字段.这种方法没有可用的示例(除了必需),或者我没有找到它们.
<form #f="ngForm">
<label for="name">Name</label>
<input type="text" ngControl="name" [(ngModel)]="obj.name" #name="ngForm">
<button type="button" (click)="save()">Save</button>
</form>
Run Code Online (Sandbox Code Playgroud)
作为验证功能的示例:
validate(control:Control):ValidationResult {
if (control.value === 'Monkey') {
return { invalidName: true }
}
}
Run Code Online (Sandbox Code Playgroud)
上述验证功能在使用FormBuilder的模型驱动表单中使用.如何使用模板驱动方法完成此操作?
答案如"不可能也不会在未来".或者"这不是最佳实践,请采用模型驱动方法." 连同一个论点对我来说都不错.(我已经假设没有办法,但在网络上找不到任何证据,我更喜欢模型驱动方法.)
在模板驱动的表单中,您需要为自定义验证器创建指令并将其附加到输入元素(如 html 属性)(与附加属性的方式相同required)。
您应该阅读这篇关于如何为自定义验证器创建指令的文章:http://blog.thoughtram.io/angular/2016/03/14/custom-validators-in-angular-2.html
| 归档时间: |
|
| 查看次数: |
1154 次 |
| 最近记录: |