0

ng-select コンポーネントがあります。ユーザーが入力した入力テキストをトリミングしたい。ユーザーが入力したテキストを取得できる以下のコードがありますが、トリミングされたテキストを ng-select に戻す方法がわかりませんでした。

<ng-select #vehicleInfoSelect [allowClear]="true"
   [(items)]="vehicleNumberList"
   (selected)="vehicleNoSelected($event)"
   (removed)="vehicleNoRemoved($event)"
   (typed)="vehicleNumberTyped($event)"
   placeholder="{{'vehicleInfo.placeHolder.filterVehicleNumberSelectBox'|translate}}">

</ng-select>

タイプスクリプトコード

@ViewChild('vehicleInfoSelect') public vehicleInfoSelect: SelectComponent;

vehicleNumberTyped(text:String){
    console.log(text);
   // here i want to trim the text and
   // set the input field of the ng-select;
}

どんな助けでも素晴らしいでしょう。ありがとう..

4

1 に答える 1

0

このライブラリは、それを行うためのこのメカニズムを提供していないと思います。このプライベート変数にアクセスすることで、これを達成するためのある種のハックを配置できます

this.behavior.filter(new RegExp(escapeRegexp(this.inputValue), 'ig'));

利用可能なng-selectソースコードです。

@ViewChild('vehicleInfoSelect') public vehicleInfoSelect: SelectComponent;

vehicleNumberTyped(text:String){
    console.log(text);
console.dir(this.vehicleInfoSelect);
}

の出力を共有できる場合は、console.dir(this.vehicleInfoSelect);さらに支援できます。


2 つ目の方法は、dispatchEventイベントを select の入力要素に変更することですが、これはより複雑になります。


3番目の方法は、要件を満たす他のパッケージを検索することです

于 2018-10-12T08:47:54.137 に答える