是否可以访问渲染它的react元素的父节点?
示例:
<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)
将返回 null。
有关componentDidMount()
的信息可以在这里找到:https://facebook.github.io/react/docs/react-component.html#componentdidmount和这里的 findDOMNode()
:https://facebook.github.io/react/docs/react-dom.html#finddomnode
关于javascript - 获取渲染 React Target/DIV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40621069/