我想要在子组件内部获取父组件名称,以便在验证该子组件的属性时显示错误消息。 我创建了一个可重用的组件,所以任何人都可以在组件内使用我的组件。当他们使用我的组件时,我想用父组件的名称显示警告消息。React Access父组件名称
是否有一个特定的方法来获取父母名称的反应。任何形式的帮助,将不胜感激。
我想要在子组件内部获取父组件名称,以便在验证该子组件的属性时显示错误消息。 我创建了一个可重用的组件,所以任何人都可以在组件内使用我的组件。当他们使用我的组件时,我想用父组件的名称显示警告消息。React Access父组件名称
是否有一个特定的方法来获取父母名称的反应。任何形式的帮助,将不胜感激。
你描述的是父母的孩子沟通,只是父名传递到使用props
孩子们可以看到他们是通过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;
不相信这是父子沟通,它就像站在一个房间,看到从墙壁包含你在哪里..这是不是容器(父)传达给你(孩子),而是孩子是情境感知。
使用这种方式你可能会注意到它是反应内部实例的一部分,并且可能会发生变化(确信它现在已经足够稳定了)。
道歉为formmatting,在手机上。
我不知道这是必须更好,但我会在这里发布它,以防止他人帮助: 'this._reactInternalInstance._currentElement._owner.getName()' – animatedgif
事情是我不知道会是什么父母的名字。我创建了一个可重用组件,所以任何人都可以在组件内使用我的组件。当他们使用我的组件时,我想用父组件的名称显示警告消息。它可以达到目的吗? –
唯一的解决方案是传递名称与道具。 – TIJ
你可以做的是在将它们渲染到父组件之前更新子道具。通过这种方式,您可以将信息传递给可重用组件,而无需儿童意识到。看到这个答案:http://stackoverflow.com/questions/32370994/how-to-pass-props-to-this-props-children我相信这正是你想要实现 –