Rumah >hujung hadapan web >tutorial js >Mengapa Kod Saya Tidak Melaksanakan Di Dalam Panggilan Balik d3.json() dalam D3 v5?

Mengapa Kod Saya Tidak Melaksanakan Di Dalam Panggilan Balik d3.json() dalam D3 v5?

DDD
DDDasal
2024-11-03 02:45:03781semak imbas

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

Kod tidak Dilaksanakan Di Dalam D3.json() Panggilan Balik

Soalan:

D3 v5, kod yang ditulis dalam fungsi panggil balik d3.json() tidak dilaksanakan. Log konsol yang diletakkan di dalam panggilan balik sedang dilangkau, menghalang pelaksanaan selanjutnya skrip.

Jawapan:

D3 v5 memperkenalkan perubahan ketara dalam tandatangan d3.json (). Fungsi panggil balik yang digunakan untuk mengendalikan permintaan telah digantikan dengan objek RequestInit pilihan. Sebaliknya, d3.json() kini mengembalikan Promise yang boleh dikendalikan menggunakan kaedah .then()nya.

Untuk menyelesaikan masalah, kemas kini kod anda seperti berikut:

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

The mekanisme pengendalian ralat juga telah berubah dalam D3 v5. Pengendalian ralat kini perlu dilakukan menggunakan kaedah .catch() Promise atau dengan menyerahkan pengendali penolakan kepada .then() sebagai hujah keduanya.

Atas ialah kandungan terperinci Mengapa Kod Saya Tidak Melaksanakan Di Dalam Panggilan Balik d3.json() dalam D3 v5?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn