Я бы настроил поиск для моего выпадающего списка select2.После ввода 3-х символов в поле поиска я бы выполнил служебный вызов с этими параметрами поиска.
Когда я выбираю раскрывающийся список, он показывает мне ошибку TypeError (Невозможно прочитать свойство 'machineService' из null) Служба инициализированаперед вызовом метода getSelectOptions.
HTML:
<select2 id="inputMachine"
[data]="machinesModel.data"
[options]="machinesModel.options"
[width]="'100%'"
[disabled]="machinesModel.isDisabled()"
(valueChanged)="machinesModel.onValueChanged($event); onSelectedMachinesChanged($event)">
</select2>
Компонент:
protected getSelectOptions(placeholder: string) {
return {
allowClear: false,
placeholder: this.translate.instant(placeholder),
multiple: true,
minimumInputLength: 3,
theme: 'bootstrap',
query: function (options) {
this.machineService.findProjections(options.term).subscribe(
machines => {
this.setMachines(machines);
options.callback(this.machinesModel.data);
},
error => {
console.log('Could not load machines: ', error);
}
);
}
};
}
Есть кто-тоесть идеи?