D3仅在返回或前进到页面时呈现SVG图表

时间:2019-04-17 14:35:29

标签: javascript html django d3.js svg

在我的本地计算机上,D3仅在返回或前进到页面时才呈现svg图表。它不会在初始页面加载时呈现。

在D3 tutorial here之后,我可以使图表在a codepen或返回页面时完美呈现。

我正在使用Django的平板应用程序运行页面。我尝试了多种浏览器和开发工具。该页面未返回错误,并且在调用用于创建图表的函数之前已加载数据。

是否可以调试我缺少的D3或Javascript函数?

我怀疑这与异步有关,我需要添加一个window.onload,如下所示,但到目前为止这没有用。

document.addEventListener("DOMContentLoaded", function(event) {
    fetch(api)
        .then(function(response) { return response.json(); })
        .then(function(data) {
            var parsedData = parseData(data);
            window.onload = function() {
                drawChart(parsedData);
            }
        })
        .catch(function(err) { console.log(err); })
    });

在此先感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

原来这个错误是无关的,这不是异步问题。 Fontawesome在页面的前面添加了一个svg,这随后导致我的JavaScript图表绘制功能出现问题。为了解决这个问题,我不得不将d3从“ svg”中选择的内容更改为特定的类。