【发布时间】:2020-01-26 16:06:24
【问题描述】:
我想验证用户是否输入了已经在数据库中的登录名,为此我将HTTP GET 发送到我的后端,我得到了所需的响应(布尔值),但<mat-error> 没有显示在true 上:
编辑:添加全局变量以确定是否找到用户名
.html:
<!--username-->
<mat-form-field class="example-full-width">
<input matInput placeholder="Username" name="username" (keyup)="isUsernameTaken()"
formControlName="username" required>
<mat-error *ngIf="isUsernameUsed">This username is taken
</mat-error>
</mat-form-field>
.ts:
isUsernameTaken(): boolean {
let username = this.form.controls['username'].value;
let url = "http://localhost:8080/public/available";
let params = new HttpParams().set('username', username);
this.http.get(url, { params: params }).subscribe(
res => {
this.isUsernameUsed = JSON.parse(res.toString());
},
err => {
alert("error has ocured." + err);
}
);
}
【问题讨论】:
标签: angular angular-material angular-ng-if