gpt4 book ai didi

Angular 6 - 响应式(Reactive)表单验证模式不起作用

转载 作者:行者123 更新时间:2023-12-03 19:46:53 27 4
gpt4 key购买 nike

我有一个 Angular 6 响应式(Reactive)表单并尝试使用正则表达式模式验证密码,但它不起作用。

               <div class="form-group">
<label for="password">Password</label>
<input type="password" formControlName="password" class="form-control" [ngClass]="{ 'is-invalid': submitted && f.password.errors }"
/>
<div *ngIf="submitted && f.password.errors" class="invalid-feedback">
<div *ngIf="f.password.errors.required">Required</div>
<div *ngIf="f.password.errors.pattern">Not valid</div>
</div>
</div>

我使用的正则表达式是这样的:
 ngOnInit() {
this.registerForm = this.formBuilder.group({
password: ['', [Validators.required, Validators.pattern('^(?=.*[A-Za-z])(?=.*\d)(?=.*[$@$!%*#?&])[A-Za-z\d$@$!%*#?&]{8,}$')]],

});
}

无论我在密码中输入什么,我都会在 ui 中收到错误消息 Not valid
知道我做错了什么吗?

最佳答案

您需要删除 ('') 并将 (//) 放入模式方法中的参数中。
它应该是:

password: ['', [Validators.required, Validators.pattern(/^(?=.*[A-Za-z])(?=.*\d)(?=.*[$@$!%*#?&])[A-Za-z\d$@$!%*#?&]{8,}$/)]]

关于Angular 6 - 响应式(Reactive)表单验证模式不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51585028/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com