使用 Angular2 处理服务器端 Laravel 验证

Handle Server Side Laravel Validation with Angular2

我最近开始将 Angular2 与 laravel API 一起使用。但我不知道如何使用 Angular2 处理服务器端验证。

我从服务器端返回这个响应。

`{"success":false,
"code":422,
"error":[],
"message":
{
"name":["The name field is required."],
"email":["The email field is required."]
}
}`

谁能帮我解决这个问题?

获取 @Component 中的表单实例,然后设置 .errors 对象。类似于:

save(data: any){
    this.http.post(data).subscribe((response) => this.handleSuccess(response),
    (errorResponse) => {
        if(errorResponse.status !== 422){
            this.handleHttpError(errorResponse);
        }else{
            let data = errorResponse.json();
            Object.keys(data).forEach((fieldName) => {
                this.form.controls[fieldName].setErrors({backend: data[fieldName]});
            });
        }
    });
}