是否可以访问在其中呈现它的react元素的父节点?
示例:
<div id='some-app'></div>
ReactDOM.render(<App />, document.getElementById('some-app'))
在React Component中
[...] extends React.component {
constructor(props) {
console.log('I have been rendered into ' + pseudoGetIdOfParentDiv())
// outputs: 'I have been rendered into some-app'
}
答案 0 :(得分:1)
您可以在安装组件后使用ReactDOM.findDOMNode(this)
(即在componentDidMount()
函数中)以获取组件的根节点。然后,您可以访问其parentNode
属性。
let node = ReactDOM.findDOMNode(this);
let parentNode = node.parentNode;
仅在安装组件后执行此操作 - 否则findDOMNode(this)
将返回null。
componentDidMount()
上的信息可在此处找到:https://facebook.github.io/react/docs/react-component.html#componentdidmount和findDOMNode()
此处:https://facebook.github.io/react/docs/react-dom.html#finddomnode