首页 > 解决方案 > ReactJS,是否可以在不使用 document.getElementbyId 的情况下引用另一个组件中的对象?

问题描述

我正在创建一个显示图表并加载图表的应用程序,我需要编写以下代码行:

const line_chart = new GoogleCharts.api.visualization.LineChart(document.getElementById('chart-div'));
line_chart.draw(data, options);

chart-div是在另一个名为<ChartComponent/>. chart-div不使用是否可以访问document.getElementById

标签: javascriptreactjscomponents

解决方案


您可以使用 react refs 并通过 props 传递引用。

class MyComponent extends React.Component {
  constructor(props) {
    super(props);
    this.myRef = React.createRef();
  }
  render() {
    return <div ref={this.myRef} />;
  }
}

https://reactjs.org/docs/refs-and-the-dom.html


推荐阅读