相关疑难解决方法(0)

tslint/codelyzer/ng lint错误:"for(... in ...)语句必须使用if语句进行过滤"

Lint错误消息:

src/app/detail/edit/edit.component.ts [111,5]:for(... in ...)语句必须用if语句过滤

代码片段(这是一个工作代码.它也可以在angular.io表单验证部分获得):

for (const field in this.formErrors) {
      // clear previous error message (if any)
      this.formErrors[field] = '';
      const control = form.get(field);

      if (control && control.dirty && !control.valid) {
        const messages = this.validationMessages[field];
        for (const key in control.errors) {
          this.formErrors[field] += messages[key] + ' ';
        }
      }
    }
Run Code Online (Sandbox Code Playgroud)

知道如何修复这个lint错误吗?

tslint angular2-forms angular-cli angular

201
推荐指数
5
解决办法
10万
查看次数

所有子控件的角度形式updateValueAndValidity

在我的Angular 4应用程序中,我有一个包含多个控件的表单.

在某些方面,我需要强制更新其有效性,所以我正在做:

this.form.get('control1').updateValueAndValidity();
this.form.get('control2').updateValueAndValidity();
this.form.get('control3').updateValueAndValidity();
// and so on....
Run Code Online (Sandbox Code Playgroud)

然后:

this.form.updateValueAndValidity();
Run Code Online (Sandbox Code Playgroud)

这很好用.

然而,我想知道是否有更好的方法来完成相同的事情,只需在父窗体上调用一个方法.

根据其文档,updateValueAndValidity()方法:

默认情况下,它还会更新其祖先的值和有效性.

但在我的情况下,我需要更新其后代的价值和有效性.所以我可以摆脱许多代码行.

typescript angular-validation angular angular-reactive-forms angular-forms

19
推荐指数
3
解决办法
2万
查看次数

迭代Angular 2+ FormArray

我有一个FormArray,需要遍历每个成员.

我搜索过,发现很多帖子似乎应该有答案,但我仍然没有找到我需要的东西.

我看到文档中有一个get方法,但我看不到在哪里获得密钥,甚至长度.

如何迭代FormArray?

angular angular-reactive-forms

17
推荐指数
3
解决办法
1万
查看次数

Angular 5表单组列表控件或对其进行迭代

我在formgorup中使用angular 5,并希望对控件进行迭代,以便基于表单创建动态组件,表单字段由外部数据服务(数据库等)提供

声明如下

check = new FormGroup({
    firstName : new FormControl(true),
    lastName : new FormControl(false)
  });
Run Code Online (Sandbox Code Playgroud)

我发现说明了如何迭代控件,但是它不起作用。我尝试使用:

for(let item of this.check.controls){}
Run Code Online (Sandbox Code Playgroud)

并得到这是chrome调试:

无法读取未定义的属性“长度”

我无法访问this.check.controls.keys或keys()

我该如何迭代密钥?

谢谢

forms web angular-fullstack angular formgroups

1
推荐指数
1
解决办法
3259
查看次数