Ng-select множественный = "true" с событием флажка (размытие), когда я нажимаю на флажок - PullRequest
0 голосов
/ 31 октября 2018

Я пытался реализовать (размытие) с помощью ng-select множественного с флажками, поэтому каждый раз, когда я меняю свою модель, я не буду делать вызовы API. Вызовы API будут выполняться только тогда, когда ng-select не в фокусе. Api будет вызываться (размытие). Но когда я нажимаю на флажок, который определен внутри ng-select только с помощью ng-шаблона, он вызывает событие размытия. Я хочу излучать только на размытие.

<div  style="width: 100%"  tabindex="0" >

                             <ng-select #mySelect  class="custom" [style]="{'height':'10px', 'width':'100%','border':'2px'}"

                                [items]="lookup.investorKnowledgeSource.asArray"
                                [multiple]="true"
                                [closeOnSelect]="false"
                                [(ngModel)]="it.source"
                                 placeholder="Select Source Of Knowledge Product"
                                [clearable]="false"
                                (ngModelChange)="onChangeKnowledgeSource($event,it)"
                                (blur)="change.emit()"

                               >
                           <ng-template   ng-multi-label-tmp >
                              <span><b>({{it.source.length}})Selected</b></span>
                          </ng-template>

                            <ng-template ng-option-tmp let-item="item" let-item$="item$" let-index="index">
                                <input id="item-{{index}}" type="checkbox"  [ngModel]="item$.selected"  [disabled]="item.disabled"/> {{item.label}}
                            </ng-template>
                          </ng-select>

                      </div>

1 Ответ

0 голосов
/ 31 октября 2018

Событие размытия срабатывает только на раскрывающемся уровне - только если вы оставите фокус раскрывающимся, будет запущено событие размытия, которое не относится к изменению модели

Вы можете добавить событие изменения, которое может сработать, или использовать debounce от rxjs, чтобы инициировать вызовы API, вы можете указать вызов API через некоторое время

...