angular - 在角度中使用 patchValue 进行选择是行不通的
问题描述
我正在使用以下代码以反应形式将值修补到字段:
editPat(patient: Patient) {
this.regForm.patchValue({
_id: patient._id,
firstName: patient.firstName,
lastName: patient.lastName,
disease: patient.disease,
department: patient.department,
doctor: patient.doctor
});
}
在此函数中department
,doctor
表单控件包含选择字段,并且值不会出现在 select 中。我在这里分配给 formcontrol 的值是选项的值..
问题我如何分配价值以通过选择patchValue
。请帮助我
HTML:
<div class="form-group ">
<label for="department">Department</label>
<select class="form-control" formControlName="department">
<option *ngFor="let department of departments"
value="{{ department._id }}">{{ department.Name }}</option>
</select>
</div>
实际上,当我尝试修补值(用于更新选项)时,我正在使用此代码并将数据保存在 db(即 id)中后,其他字段有效,但对于 select 它不起作用..
解决方案
您可以尝试另一种方法来修补值,
更新代码
HTML 文件
<div class="form-group ">
<label for="department">Department</label>
<select (change)="patchValue($event.target.value)" class="form-control" formControlName="department">
<option *ngFor="let department of departments"
value="{{ department._id }}">{{ department.Name }}</option>
</select>
</div>
.ts 文件
patchValue(value){
this.regForm.patchValue({
department : value
});
this.regForm.get('department').updateValueAndValidity();
console.log(this.regForm.value);
}
检查我更新的代码。
推荐阅读
- sql-server - 查询中标量变量的转换
- arrays - 为什么我应该 malloc 足够的空间后数组似乎泄漏?
- python - 使用请求验证 SSL 证书
- image - 在带有大厅的 nexus 上构建和推送 docker 映像
- android - Android 模拟器错误 (AdbHostServer.cpp: 83)
- python - 如何在TOR中逐步构建电路
- javascript - Quasar 文件选择器更改 q-file 中所选文件名的文本颜色
- java - 使用 Spring Boot 安全 JWT 更改密码后访问被拒绝
- inno-setup - Inno Setup 使用 Pascal 脚本自定义 FinishedLabel
- javascript - ImportError:“useNavigate”未从“react-router-dom”导出