角度素材2 MdAutocomplete
(またはMatAutocomplete
)md-option
の中にある入力内に異なる検索語を入力するオプションをユーザに提供しようとしています。MatAutocompleteまたはMdAutocomplete:入力内
現在のコード:
<md-autocomplete #auto="mdAutocomplete">
<md-option disabled>
<md-icon>search</md-icon>
{{'WELCOME_WIZARD.SEARCH_FOR_A_DEV_TEAM' | translate}}
</md-option>
<md-option (click)="auto.showPanel">
<span>
<md-form-field class="p-input-full-width p-select-adjusted">
<input mdInput
name="searchTerm" ngModel
[formControl]="searchTeamCtrl"
placeholder="{{'WELCOME_WIZARD.SEARCH_START_TYPING' | translate}}"
aria-label="state">
</md-form-field>
</span>
</md-option>
<md-option *ngFor="let team of foundTeams | async" [value]="team.name">
<span>{{ team.name }}</span>
</md-option>
<md-option disabled>
<md-icon>star</md-icon>
{{'WELCOME_WIZARD.FAVORITES' | translate}}
</md-option>
<md-option *ngFor="let team of filteredTeams | async" [value]="team.name">
<span>{{ team.name }}</span>
</md-option>
</md-autocomplete>
問題は、ユーザーが入力してオプションをクリックすると、オートコンプリートが閉じていることです。私はdisabled
というパラメータをmd-option
に与えることでこれを回避することができましたが、もう1つの問題が発生します。入力がスペースキーに反応しなくなりました。
似たようなものをうまく統合できた人がいますか、あるいはスペースキーの解決策がありますか?
私はあなたのユースケースがあるが、 'MD-option'は間違いなく、この動作のために設計されていないものをフォローわかりません。何が起こっているのは、オプション内の(クリック)イベントが[選択]しようとしているということです(https://github.com/angular/material2/blob/0ea43700efb105aa02ad3b1d3f800bf4a9925883/src/lib/core/option/option.ts#L71) 。 SPACEのA(keydown)イベントも[選択する](https://github.com/angular/material2/blob/0ea43700efb105aa02ad3b1d3f800bf4a9925883/src/lib/core/option/options.ts#L186-L194)ですが、それは無効になり、何も起こらずに 'preventDefault()'が呼び出されます。 –
@WillHowellあなたが言っていることは正しいです。私はそれを無効にする方法を模索しており、それは不可能と思われます。 –