我正在做一个用 ionic 和 angular 制作的项目,我面临的问题是每当管理员以用户身份创建时,用户都会获得一个注册链接。当用户打开一个链接时,会显示一个注册表单,然后我会对其应用所有验证问题是浏览器会自动填充用户名字段,它可能是缓存值但在单击它后得到验证我想在页面加载时验证它但值是那里不存在,它是空的。 我附上了同样的截图。
点击页面任意位置后
此验证有效。
任何人都知道我可以在这里做什么。如果值错误,我想在页面加载时显示验证
这是 Signup.html 的代码:-
<ion-label stacked>CHOOSE A USERNAME</ion-label>
<ion-item>
<ion-input formControlName="username" trim="blur" id="username" type="text" (click)="validation()" (blur)="isUsernameUnique($event.target.value)"
[class.invalid]="!signupForm.controls.username.valid && (signupForm.controls.username.dirty || submitAttempt)" (focus)="isTouched('username',true)"
(focusout)="isTouched('username',false)">
</ion-input><ion-icon name="checkmark" item-right color="green" *ngIf="signupForm.controls['username'].valid && is_unique_username"></ion-icon></ion-item>
<p class="error m-0-auto" col-12 ion-text color="danger" *ngIf="signupForm.controls['username'].hasError('required') && signupForm.controls['username'].touched && !signupForm.controls['username'].hasFocus">Username field is required.</p><p class="error m-0-auto" col-12 ion-text color="danger"*ngIf="signupForm.controls['username'].hasError('pattern') && signupForm.controls['username'].touched || signupForm.controls['username'].untouched && !signupForm.controls['username'].hasFocus && signupForm.controls['username'].toString().trim() === ''">Please enter a valid username.</p>
对于 Signup.ts :-
export class SignupPage implements AfterViewInit{
@ViewChild('myInput', { read: ElementRef }) myInput: ElementRef;
ngAfterViewInit() {
if (this.myInput) {
const inputElement = this.myInput.nativeElement as HTMLElement;
this.renderer.setAttribute(inputElement, 'tabIndex', '0');
inputElement.focus();
}
}
ionViewDidEnter() {
console.log("Username", this.signupForm.value['username']);
}
}