用户输入角度2时更改ng-select组件的输入值

时间:2018-10-12 08:26:53

标签: angular autocomplete angular-ngselect

我有一个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;
}

任何帮助都会很棒。谢谢。

1 个答案:

答案 0 :(得分: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的事件更改为select的输入元素,这将更加复杂。


第三种方法是搜索其他符合您要求的软件包