我可以在JSX的render()方法中将React <div>的ref传递给第三方基于DOM的库吗?

时间:2017-07-24 17:16:53

标签: javascript reactjs dom ref

我正在使用React并尝试将其与某些第三方基于DOM的库集成。 我可以在<div /> lambda函数(来自ref方法中的JSX)中传递render()的DOM节点来渲染库数据(即plotly.js或Google Maps)吗?

示例: 我有一个像这样的组件:

class MyComponent extends React.Component {
  render () {
    return <div ref={e => { this.element = e }} />
  }

  componentDidMount () {
    this.renderChart(this.element)
  }

  renderChart(e) {
    // skipping for the sake of brevity
  }
}

我的问题是,我是否可以将其重构为:

class MyComponent extends React.Component {
  render () {
    return <div ref={this.renderChart} />
  }

  renderChart(e) {
    // skipping for the sake of brevity
  }
}

0 个答案:

没有答案