Angular 角度材质自动完成,导致选择项后值列表为空

Angular 角度材质自动完成,导致选择项后值列表为空,angular,autocomplete,angular-material,Angular,Autocomplete,Angular Material,我试图使用Angular Material的Autocomplete表单控件和DisplayWith函数。我得到一个用于选择框的仓库列表。 但是一旦选择了一个仓库,我的仓库列表就被删除了。displayWithFn找不到与所选id关联的名称,因为我的仓库列表为空 见StackBlitz: 我在哪里清理我的仓库清单 编辑(解决方案):我已更新StackBlitz,显示错误和我最终使用的解决方案。我无法将被动表单formControlName字段与自动完成一起使用。我必须创建一个单独的formCon

我试图使用Angular Material的Autocomplete表单控件和DisplayWith函数。我得到一个用于选择框的仓库列表。 但是一旦选择了一个仓库,我的仓库列表就被删除了。displayWithFn找不到与所选id关联的名称,因为我的仓库列表为空

见StackBlitz:

我在哪里清理我的仓库清单


编辑(解决方案):我已更新StackBlitz,显示错误和我最终使用的解决方案。我无法将被动表单formControlName字段与自动完成一起使用。我必须创建一个单独的formControl,监视更改,然后将数据移动到被动表单字段。在StackBlitz中,warehouse字段显示了问题所在,warehouse Stock字段是我目前使用的解决方案

问题在于您的
[displayWith]=“displayWarehouseFn”>
绑定。它不会绑定
,除非您以
[displayWith]=“displayWarehouseFn()”>
的形式编写它,从而使
成为
MatAutocomplete
对象,而不是
应用组件
,谢谢!这可能有帮助,但我仍然得到相同的错误。当我在你的StackBlitz中更改时,它起作用,所以应该不会有问题。谢谢你,是的,这确实回答了我的问题。我将把这标记为正确答案。我想我没有正确地提问,因为我希望自动完成字段将Id作为其值,并向用户显示描述。我想我将无法使用formControlName=,必须切换到[formControl]=。谢谢你的帮助!