【发布时间】:2020-10-30 08:24:10
【问题描述】:
要求
这是我拥有的 json...
[
{
"id": 8651,
"value": "Abdominal pain"
},
{
"id": 8646,
"value": "Chest pain"
},
{
"id": 8642,
"value": "Cough"
}
]
使用它我需要使用这样的选项创建用户。
Abdominal pain □ Yes □ No
Cough □ Yes □ No
Chest pain □ Yes □ No
一旦用户做出选择,需要为每个 Id 获取选择的值。如下所示。
[
{
"id": 8651,
"selectedValue": "Y"
},
{
"id": 8646,
"selectedValue": "N"
},
{
"id": 8642,
"selectedValue": "Y"
}
]
我尝试了什么 像这样创建了一个表单条目
<form [formGroup]="symptomsForm">
<div>
<ul class="list-group">
<li class="list-group-item" *ngFor="let obj of symptomsParams">
<span> {{obj.value}} </span>
<span class="form-radio">
<input formControlName="{{obj.id}}" type="radio" />
<label>Yes</label>
</span>
<span class="form-radio">
<input formControlName="obj.id" type="radio" />
<label>No</label>
</span>
</li>
</ul>
</div>
</form>
它返回错误... core.js:15723 ERROR 错误:找不到名称为“8651”的控件 {{obj.value}},显示为空
组件代码
constructor() {
this.symptomsForm = this.fb.group({
symptoms: ['']
});
}
这看起来不是实现此要求的正确方法,请提出一种实现此要求的方法。
还有,要求 2
[
{
"id": 8651,
"value": "Abdominal pain",
"selectedValue": "N"
},
{
"id": 8646,
"value": "Chest pain",
"selectedValue": "N"
},
{
"id": 8642,
"value": "Cough",
"selectedValue": "N"
}
]
那么列表必须选中相应的单选按钮
【问题讨论】:
-
你能从你的组件中粘贴代码吗?您的 HTML 表明您正在使用响应式表单,并尝试通过 formControlName 访问
FormControl。这是基于在组件中正确初始化的 formGroup。因此,如果有助于了解您在组件中所做的工作以获得完整的图片。 -
@Edward ...我已经更新了组件代码。我没有做太多,没有得到解决方案或如何处理这个问题。
标签: angular typescript angular8