angular 4访问嵌套的反应形式元素

时间:2018-01-15 12:23:58

标签: javascript angular typescript

我有一个像这样的反应形式,当点击一个按钮时动态添加。

ngOnInit() {
    this.myForm = this._fb.group({
        freeItems: this._fb.array([
            this.initDetails(),
        ])
    });
}

initDetails() {
    return this._fb.group({
        offerProductId: ['', Validators.required],
        offerUnitId: ['', Validators.required],
    });
}

我试图访问' freeItems'比如console.log(this.myForm.get('freeItems').value);
我得到结果:

{  
   offerProductId:"5a579833029b7307a2604428",
   offerUnitId:"1243"
}{  
   offerProductId:"5a579833029b7307a2604428",
   offerUnitId:"2332"
}{  
   offerProductId:"5a579793029b7307a2604421",
   offerUnitId:"2323"
}

这很好,但我无法访问' freeItems'的内部元素。像disable(),value,setValue(),offerProductId或offerUnitId。

我尝试了这个console.log(this.myForm.get('freeItems.offerProductId'));并将结果作为Null。请帮忙。

1 个答案:

答案 0 :(得分:2)

那是因为你有一个阵列。您需要告诉Angular您要访问的索引。

this.myForm.get('freeItems.0.offerProductId')