Maison >interface Web >js tutoriel >Pourquoi mon code ne s'exécute-t-il pas dans le rappel d3.json() dans D3 v5 ?

Pourquoi mon code ne s'exécute-t-il pas dans le rappel d3.json() dans D3 v5 ?

DDD
DDDoriginal
2024-11-03 02:45:03777parcourir

Why Isn't My Code Executing Inside the d3.json() Callback in D3 v5?

Code non exécuté dans D3.json() Rappel

Question :

Dans D3 v5, le code écrit dans la fonction de rappel de d3.json() ne s'exécute pas. Les journaux des consoles placés à l'intérieur du rappel sont ignorés, empêchant l'exécution ultérieure du script.

Réponse :

D3 v5 introduit un changement significatif dans la signature de d3.json (). La fonction de rappel utilisée pour gérer la demande a été remplacée par un objet RequestInit facultatif. Au lieu de cela, d3.json() renvoie désormais une promesse qui peut être gérée à l'aide de sa méthode .then().

Pour résoudre le problème, mettez à jour votre code comme suit :

d3.json("/trip_animate/tripData.geojson")
  .then(function(data){
    // Code from your callback goes here...
  });

Le le mécanisme de gestion des erreurs a également changé dans D3 v5. La gestion des erreurs doit maintenant être effectuée à l'aide de la méthode .catch() de Promise ou en passant un gestionnaire de rejet à .then() comme deuxième argument.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn