React Access父组件名称

Gay*_*ith 5 reactjs

我想在子组件中获取父组件名称,以在验证该子组件的属性时显示错误消息.我正在创建一个可重用的组件,所以任何人都可以在组件中使用我的组件.当他们使用我的组件时,我想显示带有父组件名称的警告消息.

是否有一个特定的方法来获取反应中的父名称.任何形式的帮助将不胜感激.

Jos*_*son 9

孩子们可以通过他们看到他们组成的背景this._reactInternalInstance._currentElement._owner._instance.__proto__.constructor.name.

以下列方式使用:

import React, { Component } from 'react';
class Warning extends Component {
  render() {
    return (
      <div> {"WARNING: " + this._reactInternalInstance._currentElement._owner._instance.__proto__.constructor.name + " has an error."}
      </div>
    )
  } 
}

export default Warning;
Run Code Online (Sandbox Code Playgroud)

不要相信这是父母的孩子沟通,就像站在一个房间里,从你所在的墙壁看到的东西......这不是与你(孩子)沟通的容器(父母),而是孩子的情境感知.

使用这种方式,但请注意它是内部实例的反应的一部分并且可能会发生变化(相信它在今天已经足够稳定了).

在移动设备上形成表格的道歉.

  • 我不确定这是否一定更好,但我会在这里发布它,以防它帮助某人:`this._reactInternalInstance._currentElement._owner.getName()` (3认同)
  • 那么在功能组件中如何实现呢? (2认同)