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

前端之家收集整理的这篇文章主要介绍了formGroup.get vs formGroup.controls in reactive形式 – Angular前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
使用时选择验证是否有任何首选方法

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

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

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

与…一样

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

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

  1. 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的第一个元素:

  1. this.form = this.formBuilder.group(
  2. {
  3. test: this.formBuilder.array(
  4. [
  5. ['form control 1 in form array'],['form control 1 in form array'],...
  6. ]
  7. )
  8. }
  9. );

猜你在找的Angularjs相关文章