我有一种输入类型,比如:
<input type="text" name="emaill" #emaill="ngModel" pattern="^\w+([\.-]?\w+)@\w+([\.-]?\w+)(\.\w{2,3})+$" [(ngModel)]="user.email" class="form-control input-underline" required />
<div *ngIf="(emaill.invalid && emaill.touched) || (emaill.touched && emaill.pristine)" class="error-block">
<div [hidden]="!emaill.errors.required">Enter email</div>
<div [hidden]="!emaill.errors.pattern">Invalid email</div>
</div>但它似乎触摸事件不工作,相同的事件是以前的工作与angular 4.3.But切换到angular 5后,触摸事件始终是false.when我打印喜欢{{emaill.touched}}它始终是假,即使触摸输入类型。另外,如果我将输入类型"text“更改为"password",它也可以正常工作。
发布于 2018-02-01 18:55:31
由于尚未退出"emaill.error“而触发的错误会阻塞该值。检查控制台,您将看到。
对此进行更改:
...
<div [hidden]="!emaill.errors?.required">Enter email</div>
<div [hidden]="!emaill.errors?.pattern">Invalid email</div>
...https://stackoverflow.com/questions/48559489
复制相似问题