加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

formGroup.get vs formGroup.controls in reactive形式 – Angul

发布时间:2020-12-17 07:31:14 所属栏目:安全 来源:网络整理
导读:使用时选择验证是否有任何首选方法 myForm.controls [‘name’].有效 myForm.get(‘name’).有效 因为两者似乎只是在语法上不同,但实现了相同的目标. labelName input type="text" formControlName="name"/labeldiv class="alert" *ngIf="!myForm.controls['
使用时选择验证是否有任何首选方法

> myForm.controls [‘name’].有效
> myForm.get(‘name’).有效

因为两者似乎只是在语法上不同,但实现了相同的目标.

<label>Name
  <input type="text" formControlName="name">
</label>
<div class="alert" *ngIf="!myForm.controls['name'].valid && myForm.controls['name'].touched">
  {{ titleAlert }}
</div>

与…一样

<div class="alert" *ngIf="!myForm.get('name').valid && myForm.get('name').touched">
  {{ titleAlert }}
</div>

从我在代码中检查,得到这个代码:

AbstractControl.prototype.get = function (path) { return _find(this,path,'.'); };

我刚刚开始使用Angular,所以我们将非常感谢专家意见.

就像你发现的那样,FormGroup.get旨在通过它的路径访问目标formcontrol.并且它更常用于复杂(多层嵌入)情况,这使得从多层嵌入形式获得目标控件变得容易,并且使代码清晰且易于理解.

以下面的例子为例,你可以通过this.form.get(‘test.0’)代替this.form.controls.test.controls [0]来访问嵌入FormArray的第一个元素:

this.form = this.formBuilder.group(
  {
    test: this.formBuilder.array(
      [
        ['form control 1 in form array'],['form control 1 in form array'],...
      ]
    )
  }
);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读