我使用Angular4构建前端。如果用户提交错误的表单,则应显示错误消息。
此刻,我的错误处理如下所示:
// This code is run when a response from the server is received
if ('error' in server_response) {
for (let key in server_response.error {
this.form.controls[key].setErrors({'error': true});
let error_message_from_server = server_response.error[key];
}
}
如何显示HTML中的错误:
<span class="error" *ngIf="field.invalid">Error: {{field.errors.error}} <br></span>
此刻,field.invalid
当收到错误时,它变为true,但field.errors.error
在一个空字符串中。
问题:如何设置field.errors.error
信息?此消息应为的字符串error_message_from_server
请注意,在HTML代码中使用if语句解决此问题不是一种选择。潜在的错误数以百计。
this.form.controls[key].setErrors({'error': true});
//键是错误,值是布尔值而不是字符串
尝试设置字符串类型值
for (let key in server_response.error {
this.form.controls[key].setErrors({'error': erver_response.error[key]});
//Calling `setErrors` will also update the validity of the parent control.
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句