wie man eine Ajax-Anfrage in Axios abbricht / abbricht

8

Ich verwende axios für ajax-Anfragen und reactJS + flux für die Render-Benutzeroberfläche. In meiner App gibt es eine dritte Seiten-Timeline (reactJS-Komponente). Die Zeitleiste kann mit dem Maus-Scroll verwaltet werden. Die App sendet nach jedem Scroll-Ereignis eine AJAX-Anforderung für die eigentlichen Daten. Problem, dass die Verarbeitung der Anforderung auf dem Server langsamer als das nächste Bildlaufereignis sein kann. In diesem Fall kann die App mehrere (normalerweise 2-3) Anforderungen haben, die bereits veraltet sind, weil der Benutzer weiter scrollt. Es ist ein Problem, weil jedes Mal beim Empfang neuer Daten die Zeitleiste neu zu zeichnen beginnt. (Weil es reactJS + flux ist) Aus diesem Grund sieht der Benutzer die Bewegung der Zeitleiste mehrmals hin und her. Der einfachste Weg, um dieses Problem zu lösen, ist es, vorhergehende Ajax-Anfragen wie in jQuery abzubrechen. Zum Beispiel:

%Vor%

Wie stornieren / brechen Sie Anfragen in axios ab?

    
Rajab Shakirov 12.07.2016, 12:40
quelle

3 Antworten

9

Axios unterstützt momentan keine Anfragen abzubrechen. Einzelheiten finden Sie unter dieses Problem .

UPDATE: Abbruchunterstützung wurde in den Axios v0.15 hinzugefügt.

    
Nick Uraltsev 13.07.2016, 13:37
quelle
1

So habe ich es mit Versprechungen im Knoten gemacht. Pollings stoppen nach der ersten Anfrage.

%Vor%     
Legolas 25.07.2017 07:24
quelle
0

Es gibt ein wirklich schönes Paket mit einigen Anwendungsbeispielen namens axios-cancel. Ich habe es sehr hilfreich gefunden. Hier ist der Link: Ссылка

    
Kornel 17.05.2017 16:37
quelle