我尝试在<mat-autocomplete>
不使用反应形式的情况下使用 Angular Material(不是 AngularJS)。但他们所有的例子都使用反应形式......
我尝试做的事情:
1. 当在 中输入内容时mat-input
,进行 Ajax 调用以检索用户列表
2. 在自动完成中显示用户列表(显示用户名),但将用户存储为模型
3 . 当模型改变时,调用我选择的函数
现在我做那些疯狂的事情(我说疯狂是因为它看起来很多)。
<mat-form-field fxLayout>
<input type="text"
matInput fxFlex="100"
[(ngModel)]="listFilterValue"
(keyup)="memberInputChanged(input.value)"
(change)="memberChanged()"
*ngIf="isAutocompleteNeeded()"
#input
[matAutocomplete]="auto">
</mat-form-field>
<mat-autocomplete #auto="matAutocomplete" [displayWith]="getMemberAsStr">
<mat-option *ngFor="let member of members | async" [value]="member">
{{ getMemberAsStr(member) }}
</mat-option>
</mat-autocomplete>
目前只有console.log
在我的 JS 中才能看到叫什么,有什么价值,这里就不分享了。我是否使用了正确的属性、正确的逻辑?
(members
我的组件中的属性是一个 Rxjs BehaviourSubject)
我现在所做的不起作用,因为listFilterValue
从来没有设置任何东西。