gpt4 book ai didi

angular - 如何以编程方式在 Angular 2 中设置全局表单错误?

转载 作者:太空狗 更新时间:2023-10-29 18:21:33 24 4
gpt4 key购买 nike

我有一个函数可以将服务器(远程)错误附加到我表单中的字段。如何将全局错误添加到表单中(即不仅仅是一个字段)?我用 TODO 标记了它

import {NgForm} from 'angular2/common';

export function appendRemoteErrorsToForm(form: NgForm, modelState: Map<string, Array<string>>) {
if (!modelState) {
return;
}
let _globalKey = 'global';
for (let key in modelState) {
let errors = modelState[key];
if (key !== 'global') {
form.controls[key].setErrors({
remote: errors
});
} else {
//todo
}
}
}

最佳答案

我会在与 NgForm 指令关联的 ControlGroup 上设置错误:

for (let key in modelState) {
let errors = modelState[key];
if (key !== 'global') {
form.controls[key].setErrors({
remote: errors
});
} else {
form.control.setErrors({ // <-----
remote: errors
});
}
}

这样你就可以这样引用它了:

<form #companyForm="ngForm">
<div *ngIf="companyForm.control.errors">
Display errors
</div>
</form>

关于angular - 如何以编程方式在 Angular 2 中设置全局表单错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37206135/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com