Angular 无法使用异步从mat自动完成获取mat选项的选定值
我尝试检索mat autocomplete的mat选项的每个选项中的整个对象 当我单击mat选项时,optionSelected方法不会返回任何内容。我还尝试在mat选项上添加一个click方法,但得到了相同的结果 这是我到目前为止试过的Angular 无法使用异步从mat自动完成获取mat选项的选定值,angular,asynchronous,rxjs,angular-material,Angular,Asynchronous,Rxjs,Angular Material,我尝试检索mat autocomplete的mat选项的每个选项中的整个对象 当我单击mat选项时,optionSelected方法不会返回任何内容。我还尝试在mat选项上添加一个click方法,但得到了相同的结果 这是我到目前为止试过的 <mat-form-field> <input [formControl]="autoCompleteControl" [matAutocomplete]="auto" type="text"
<mat-form-field>
<input [formControl]="autoCompleteControl"
[matAutocomplete]="auto"
type="text"
placeholder="Pick one"
(keyup.enter)="submitPlayer1($event)"
aria-label="Number"
matInput>
<mat-icon
style="cursor: pointer"
matSuffix>done_outline
</mat-icon>
<mat-autocomplete autoActiveFirstOption #auto="matAutocomplete" (optionSelected)="onSelectionChanged($event)">
<mat-option *ngFor="let player of playersAutoComplete$ | async; let index = index"
[value]="player">{{player}}>
<img
[src]="this.store.AVATAR_URL + player.pid + '.jpg'"
class="example-option-img"
aria-hidden height="25">
<span>{{player.playerName}}</span> |
<span class="text-info">{{player.leagueName}}</span> |
<small>Population: {{player.teamName}}</small>
</mat-option>
</mat-autocomplete>
</mat-form-field>
完成概要
{{player}}>
{{player.playerName}|
{{player.leagueName}|
人口:{{player.teamName}
我怀疑是async将可观察对象转换为数组,但我不能直接使用数组,因为我从API检索自动完成mat选项 我会尝试创建一个,但现在有点复杂。您以前是否遇到过此问题?我已经实现了类似的东西,没有异步(just*ngFor=let player of players),它工作得很好。在使用异步管道时,您是否遇到任何错误?没有错误。mat选项显示了我要求的所有信息。但是,mat选项方法,或者是在其内部单击,或者是在mat自动完成中选择的选项,其行为就像没有调用任何方法一样。Woo如果可能创建stackblitz,这很奇怪。我发现了错误。我使用了一个重复的输入值,可能与表单控件有冲突。谢谢,我会尝试创建一个,但现在有点复杂。您以前是否遇到过此问题?我已经实现了类似的东西,没有异步(just*ngFor=let player of players),它工作得很好。在使用异步管道时,您是否遇到任何错误?没有错误。mat选项显示了我要求的所有信息。但是,mat选项方法,或者是在其内部单击,或者是在mat自动完成中选择的选项,其行为就像没有调用任何方法一样。Woo如果可能创建stackblitz,这很奇怪。我发现了错误。我使用了一个重复的输入值,可能与表单控件有冲突。谢谢