获取渲染反应 Target/DIV

Get Rendering React Target/DIV

是否可以访问渲染元素的父节点?

示例:

<div id='some-app'></div>
ReactDOM.render(<App />, document.getElementById('some-app'))

在 React 组件中

[...] extends React.component {
  constructor(props) {
    console.log('I have been rendered into ' + pseudoGetIdOfParentDiv())
    // outputs: 'I have been rendered into some-app'
  }

您可以在组件挂载后(即在componentDidMount() 函数中)使用ReactDOM.findDOMNode(this) 来获取组件的根节点。然后您可以访问其 parentNode 属性。

let node = ReactDOM.findDOMNode(this);
let parentNode = node.parentNode;

仅在安装组件后执行此操作 - 否则 findDOMNode(this) 将 return 为空。

有关 componentDidMount() 的信息可在此处找到:https://facebook.github.io/react/docs/react-component.html#componentdidmount and findDOMNode() here: https://facebook.github.io/react/docs/react-dom.html#finddomnode