29 lines
777 B
TypeScript
29 lines
777 B
TypeScript
|
import { Component, Input, OnInit } from '@angular/core';
|
||
|
import { FormGroup } from '@angular/forms';
|
||
|
import { FieldGroup } from '../models/FieldGroup';
|
||
|
import { CompositeField } from '../models/CompositeField';
|
||
|
import { FormArray } from '@angular/forms/src/model';
|
||
|
|
||
|
@Component({
|
||
|
selector: 'groupfield-form',
|
||
|
templateUrl: './groupfield-form.component.html',
|
||
|
styleUrls: []
|
||
|
})
|
||
|
|
||
|
export class GroupFieldFormComponent {
|
||
|
@Input() form: FormGroup;
|
||
|
@Input() dataModel: FieldGroup;
|
||
|
|
||
|
constructor(){}
|
||
|
|
||
|
ngOnInit(){
|
||
|
this.addNewField();
|
||
|
}
|
||
|
|
||
|
addNewField(){
|
||
|
let compositeField: CompositeField = new CompositeField();
|
||
|
this.dataModel.compositeFields.push(compositeField);
|
||
|
(<FormArray>this.form.get("compositeFields")).push(compositeField.buildForm());
|
||
|
}
|
||
|
|
||
|
}
|