下面是代码的一个简单部分。
<label class="center-block">Name:
<input class="form-control" (change)="searchUserBYName()" formControlName="name">
</label>
<div *ngFor="let user of users" (click)="selectUser(user)">{{user.name}}</div>
对此输入的任何更改都将触发searchUserByName()函数,此函数将返回一个用户对象列表,该列表将提供给“users”:
{name: "fullname", id: "userid"}
将显示用户列表,我可以选择我想要的用户。 selectUser()函数将此用户存储到名为“selectedUser”的变量中,并将用户的全名更新为输入文本框(这是必需的,无法更改)。但是如何将formControlName绑定到用户的id?这意味着,当我单击提交按钮时,如何提交用户的ID而不是用户的名称?另一个要求是我无法在整个表单中添加更多可见元素。 我考虑过在组件函数中传递用户ID。只需通过“提交”传递名称即可。但是有一个短缺。我可以输入输入框的值而无需从用户列表中选择其他用户并提交。在这种情况下,id为null。 我不知道我是否清楚地澄清了这个问题。提前谢谢!