我有1个父组件名称[Parent-1]和1个子组件名称[Child-1]。现在,我还有其他几个组件名称[Other-1]和[Other-2]。儿童组件通讯
现在我将[Other-1]和[Other-2]组件传递给[Child-1]组件。 JSX渲染正确。我如何从[Child-1]访问[Other-1/2]组件功能?或者我如何将道具从[Other-1/2]传递给[Child-1]?
通过使用引用我可以从[Parent-1]调用[Other-1/2]函数,但我想从[Child-1]访问。我尝试将参数传递给[Child-1],如<Child abc={() => this.refs.other1.hello()}/>
或<Child abc={this.refs.other1.hello()}/>
,但这不起作用。
通过使用全局事件发射器的方式,我能够实现解决我的上述问题。但不知道这是否是React.js中的适当方式
此外还得到帮助从http://andrewhfarmer.com/component-communication/ –
虽然还有1个问题ReactDOM.findDOMNode(this.refs.something)在放入log()函数并从Child –
调用log()函数时总是返回null'this.refs.something'被称为字符串refs和那些已被弃用。 –