从 BadRequest 获取错误信息
Getting the error message from BadRequest
我正在尝试让我的注册表单显示当用户发送无效数据时从 API 返回的错误。
您可以在此处查看错误响应在控制台中的显示方式:console ss
这是我在 RegisterComponent.ts 中尝试做的事情:
onSubmit() {
this.userService.register(this.registerForm.value).subscribe(response =>{
this.router.navigateByUrl('/shop');
}, error => {
console.log(error);
this.errorMessage = error.errors;
if(this.errorMessage) for(let err of this.errorMessage) console.log(err);
});
}
然后我将其添加到 html:
<ul *ngIf="errorMessage">
<li *ngFor="let error of errorMessage">
{{error}}
</li>
</ul>
但它没有按预期工作。似乎 errorMessage 变量为空,我希望它显示“此电子邮件已存在一个帐户”。
如何正确获取错误消息?
你做对了,但存储错了。您可能想尝试 this.errorMessage = error.error;
没有错误。此外,您不必循环错误,因为它是一个字符串。如果你循环它,你会一个一个地写每个字母。
我正在尝试让我的注册表单显示当用户发送无效数据时从 API 返回的错误。
您可以在此处查看错误响应在控制台中的显示方式:console ss
这是我在 RegisterComponent.ts 中尝试做的事情:
onSubmit() {
this.userService.register(this.registerForm.value).subscribe(response =>{
this.router.navigateByUrl('/shop');
}, error => {
console.log(error);
this.errorMessage = error.errors;
if(this.errorMessage) for(let err of this.errorMessage) console.log(err);
});
}
然后我将其添加到 html:
<ul *ngIf="errorMessage">
<li *ngFor="let error of errorMessage">
{{error}}
</li>
</ul>
但它没有按预期工作。似乎 errorMessage 变量为空,我希望它显示“此电子邮件已存在一个帐户”。 如何正确获取错误消息?
你做对了,但存储错了。您可能想尝试 this.errorMessage = error.error;
没有错误。此外,您不必循环错误,因为它是一个字符串。如果你循环它,你会一个一个地写每个字母。