2017-06-29 7 views
-1

Ich habe eine Ionen-Bereich (Radio-Button) und ich bekomme die Daten und drängen es, so dass ich diese Daten in mongodb suchen und es an den Client beantworten kann.Aber wenn Benutzer ziehen Sie es (ohne lass es sofort) es dauert alle Daten und suche n mal bei mongodb, so dass es langsamer wird. Was ich tun möchte, ist eine setTime setzen, so dass nach etwa 1secund Benutzer die Taste fallengelassen wird es die Daten senden, nicht sofortAngular2 http.post setTimeout

Html

<ion-range min="0" max="200" pin="true" [(ngModel)]="distance" color="secondary" (ngModelChange)="Change()"> 
    <i class="fa fa-map-marker" range-left aria-hidden="true"></i> 
    <i class="fa fa-map-marker" style="font-size:25px;" range-right aria-hidden="true"></i> 

    </ion-range> 

TS

Ich denke, zwischen} und) Ich muss setTimeint setzen, aber ich habe es nie verwendet. Was ist Ihre Ideen.

Danke

Antwort

0

die ion-range eine Eingabeeigenschaft hat debounce die

Wie lange ist in Millisekunden zu warten, um das Ereignis ionChange nach jeder Änderung im Bereich Wert auszulösen. Standard 0.

Ionic Range API documentation

ich stark Dienstleistungen empfehlen stattdessen Anfragen machen http direkt von der Komponente zu verwenden.

bearbeiten

Verwenden debounce mit ionChange statt ngModelChange

<ion-range min="0" max="200" pin="true" debounce="1000" [(ngModel)]="distance" color="secondary" (ionChange)="Change($event)"> 
....... 
</ion-range> 
+0

Ja, Sie haben Recht, aber ich denke, wegen ngModelChange debounce doesnt es noch Arbeit macht die http.post momentanen @Shanil Fernando – gnncrdm

Verwandte Themen