繁体   English   中英

NVD3工具提示错误

[英]NVD3 tooltip bug

我能够解决以下问题: Uncaught TypeError:无法读取React中未定义的属性'showBarChart'

var that = this;
chart.tooltip.contentGenerator(function (d) {
      var html = "<div>";
      d.series.forEach(function(elem){
        Object.keys(data_obj).forEach(function(key_1) {
          var outer_obj = data_obj[key_1];
          if (outer_obj["key"] === elem.key) {
              that.showBarChart(elem.key);
              var expr = outer_obj["values"][0]["expr"];
              html += "<p>" + elem.key + "</p>";
              html += "<p>x = " + d.value + ", y = " + elem.value + "</p>";
          }
        });
      })
      html += "</div>";
      return html;
    });

但是,当tooltipmouse out scatterChart时不消失并且仅停留在页面上时,该解决方案导致nvd3 scatterChart出现一个非常奇怪的错误。

在此处输入图片说明

我该如何解决?

问题是在componentDidUpdate我正在调用createScatterChart 我将其注释掉,并且开始工作正常。 这显然是由于React工作流而发生的,我发现在以下问题中对此进行了描述: 跟踪为何重新渲染React组件

componentDidMount() {
 this.createScatterChart()
}

 componentDidUpdate() {
 //this.createScatterChart()
}

Calling this.setState() within the component. This will trigger the following component lifecycle methods shouldComponentUpdate > componentWillUpdate > render > componentDidUpdate

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM