javascript - 获取渲染 React Target/DIV

标签 javascript reactjs jsx

是否可以访问渲染它的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/

相关文章:

javascript - 可以从 JavaScript 网络 worker 调用 ActionScript 函数吗?

javascript - 我对 API 的调用并未更新 React 状态

javascript - React 有没有从 js 到 jsx 的编译器?

javascript - 在 JS 中定义一个第一个元素为空的数组

javascript - AngularJS:将base64图像添加到数组

javascript - MediaDevices.getUserMedia() 对 ios 的支持

javascript - React Stripe 拆分卡元素错误 : Maximum update depth exceeded

javascript - 单击 Firebase 数据和 React Native 获取列表项信息

javascript - 如何将 HTML 字符串呈现为真正的 HTML?

javascript - Rest/HTML - 如果服务器停止,检测服务器是否再次启动?