ホームページ > 記事 > ウェブフロントエンド > d3.json() コールバック内のコードが実行されないのはなぜですか?
D3 v5 では、d3.json() の署名が大幅に変更されました以前のバージョンと比較して。コールバック関数を使用する代わりに、d3.json() は .then() メソッドを使用して処理できる Promise を返すようになりました。この変更により、古い実装のいくつかの問題が解決され、D3 が最新のブラウザ API と一致します。
d3.json() コールバック内のコードが実行されない問題を修正するには、次のようにします。 Promise を使用するにはコードを更新する必要があります。 GeoJSON ファイルからデータをロードするための新しい構文は次のとおりです。
d3.json("/trip_animate/tripData.geojson") .then(function(data) { // Code from your callback goes here... });
コールバック構造の変更に加えて、D3 v5 ではロード時のエラーを処理する新しい方法も導入されています。データ。エラー ハンドラを最初のパラメータとしてコールバック関数に渡す代わりに、Promise:
d3.json("/trip_animate/tripData.geojson") .then(function(data) { // Code from your callback goes here... }) .catch(function(error) { // Do some error handling. });の .catch() メソッドを使用する必要があります。
以上がd3.json() コールバック内のコードが実行されないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。