Heim > Artikel > Web-Frontend > Warum wird mein Code nicht innerhalb des d3.json()-Rückrufs in D3 v5 ausgeführt?
Code wurde nicht in D3 ausgeführt.json() Rückruf
Frage:
In D3 v5, der in der Callback-Funktion von d3.json() geschriebene Code wird nicht ausgeführt. Im Rückruf platzierte Konsolenprotokolle werden übersprungen, wodurch die weitere Ausführung des Skripts verhindert wird.
Antwort:
D3 v5 führt eine wesentliche Änderung in der Signatur von d3.json ein (). Die zur Bearbeitung der Anfrage verwendete Rückruffunktion wurde durch ein optionales RequestInit-Objekt ersetzt. Stattdessen gibt d3.json() jetzt ein Promise zurück, das mit seiner .then()-Methode verarbeitet werden kann.
Um das Problem zu beheben, aktualisieren Sie Ihren Code wie folgt:
d3.json("/trip_animate/tripData.geojson") .then(function(data){ // Code from your callback goes here... });
Die Der Fehlerbehandlungsmechanismus hat sich in D3 v5 ebenfalls geändert. Die Fehlerbehandlung sollte nun mit der .catch()-Methode von Promise oder durch Übergabe eines Ablehnungshandlers an .then() als zweites Argument erfolgen.
Das obige ist der detaillierte Inhalt vonWarum wird mein Code nicht innerhalb des d3.json()-Rückrufs in D3 v5 ausgeführt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!