我已经从不同类型(例如单选按钮和复选框)生成了表单,并且每个表单都有不同的验证,但是我不知道我的回答是什么,所以我想根据我的回答来构建表单,如果类型是复选框,例如,需要进行验证,这是我的回复:
{
Questions: [
{
type: "RadioButton",
ID: 9,
Options: [
{
ID: 3,
Text: "John"
},
{
ID: 4,
Text: "Doe"
}
],
Text: "what is your name?"
},
{
type: "CheckBox",
ID: 9,
Options: [
{
ID: 3,
Text: "John"
},
{
ID: 4,
Text: "Doe"
}
],
Text: "what is your name?"
},
{
type: "Text",
ID: 9,
Text: "what is your name?"
}
]
}
所以我有3种不同的类型[RadioButton,CheckBox,Text],此后,我使用html构建表单,但是我尝试根据上述响应构建验证。这是我的html:
<div class="form">
<form [formGroup]="profileForm">
<div formArrayName="aliases">
<div class="item" *ngFor="let item of items; let i = index">
<ng-container *ngIf="item.type == 'CheckBox'">
<span>{{item.Text}}</span>
<div class="options" *ngFor="let option of item">
<input type="checkbox" class="hidden" formControlName="{{i}}"
value="{{option.ID}}" name="{{option.Text}}">
</div>
</ng-container>
</div>
</div>
</form>
</div>
我尝试在ts中做到这一点:
profileForm = this.fb.group({
aliases: this.fb.array([
this.fb.control('')
])
});
但是我认为我的代码或概念中缺少一些东西。