angular2 中的条件验证

k11*_*1k2 3 validation typescript angular

我想对客人和客户注册表使用相同的模板,但验证可能会有所不同,如下所示

让我们假设这是一个客人登记表 - 名字是必需的

<form #f="ngForm" novalidate (ngSubmit)="save()">
                <label>First Name:</label>
                <input type="text" name="firstName" [(ngModel)]="values.FirstName" required #firstName="ngModel">
                <div *ngIf="firstName.hasError('required') && (!firstName.pristine && !f.submitted)" class="text-danger">You must include a first name.</div>
</form>
Run Code Online (Sandbox Code Playgroud)

这是给客户的——名字是可选的

<form #f="ngForm" novalidate (ngSubmit)="save()">
                    <label>First Name:</label>
                    <input type="text" name="firstName" [(ngModel)]="values.FirstName" #firstName="ngModel">

</form>
Run Code Online (Sandbox Code Playgroud)

我想对两种表单使用相同/唯一的模板,但验证各不相同!我怎么能做到呢。蒂亚!

注意:通过使用响应式表单我可以实现它,但我知道我想在模板驱动的表单中实现。

A. *_*Tim 6

基于此主题,您可以尝试

<input name="first" ngModel [required]="isRequired">
Run Code Online (Sandbox Code Playgroud)