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);我可以进一步帮助您的输出。


第二种方法是将dispatchEvent事件更改为选择的输入元素,这将更加复杂。


第三种方法是搜索其他满足您要求的包

于 2018-10-12T08:47:54.137 回答