2016-12-12 91 views
0

基本问题是验证表格行内包含的控件的正确方法是什么?我有一组HTML像这样:表行中的角度2验证

<tr *ngFor="let items of myList"> 
<input class="form-control" [ngModel]="item.foo" /> 
... 
</tr> 

角2的形式API似乎在表行向实际形式面向动态控件来代替。有没有关于API的缺失,或者是否有另一种有效地使用api的方法?如果不是,达到相同结果的最佳方法是什么?

+0

只是为了澄清,使用ngFor与嵌入式输入标签绑定到模型属性 –

回答

0

这样的事情?

myForm: FormGroup; 

ngOnInit() { 
    let updated = this.fb.group({ 
    someField: ['myInitialValue', [Validators.required]], 
    groups: this.fb.array([]) //Create empty array 
    }); 
    this.myForm = updated; //Update it 
} 

arbitaryFunction() { //Call this whenever you want to update validation on dynamic controls. 
    const arrayControl = <FormArray>this.myForm.controls['groups']; //Fetch array to add to 
    yourItems.forEach(item => { //Loop through your array of items. 
    let group = this.fb.group({ 
    propertyOne: ['InitialValue', [Validators.required]] 
    }); 
    arrayCtrl.push(group); 
} 
+0

谢谢。不幸的是,我耗尽了时间,不得不推出自己的解决方案给需要它的人。对我来说,感觉像管理表格行之外的单个组件本身会变得麻烦。 –

+0

哈哈酷无后顾之忧,这就是你如何做到这一点,请标记为正确的其他人。 – Baconbeastnz