在新窗口中显示带有highchart的React

时间:2019-01-30 04:40:03

标签: reactjs highcharts redux

Highchart找不到DOM元素,因为它是React-portal创建的新窗口的一部分。

我有一个名为TermChart.tsx的组件,其渲染功能如下所示:

render() {
        if(this.props.containerEl){
            return ReactDOM.createPortal(this.props.children, this.props.containerEl);
        }else{
            return (null);
        }
    }

父组件index.tsx以以下格式调用TermChart.tsx

<TermChart>
   <div id="term-chart"></div>
</TermChart>

创建新窗口后,我正在componentWillReceiveProps的{​​{1}}中调用高级图表:

TermChart.tsx

Highcharts抛出if(nextProps.containerEl && nextProps.externalWindow){ Highcharts.chart("term-chart", chartData) } ,因为它找不到DOM元素www.highcharts.com/errors/13

我想在这个新的反应门户窗口中显示此图表。请帮忙。

0 个答案:

没有答案