繁体   English   中英

React.js更新组件作为参数传递

[英]React.js Update component passed as argument

我正在使用React.js和Strophe.js开发Web xmpp聊天,但是运行起来很麻烦。

XMPP连接存储为单个对象,但是棘手的是,连接状态更改由类处理,我可以在其中存储真正的处理程序(因为显示连接状态将具有2个不同的视图,并且初始化后无法更改Strophe.OnConnection处理程序)

我想要实现的是将组件传递给函数,使用新的props进行渲染,就像这样

var statusHandler = {
    handler:"",
    setStatus: function(status) {
        React.render(<this.handler value=status/>, dom);
    }
}

var firstContainer = React.render(<anotherComponent/>, dom);
statusHandler.handler = firstContainer;
XMPPConnection(login,pwd,statusHandler.setStatus);

//now changing component
var secondContainer = React.render(<anotherComponent/>, dom);
statusHandler.handler = secondContainer;

或者可以在组件上定义回调,并将其作为参数传递(但不能使用静态函数)

一种可能清除代码的想法是,在连接状态更改时发出一个事件。 然后里面你的反应内的部件componentDidMount听那个事件,并设置相应的状态。

像这样的东西: http : //jsfiddle.net/kb3gN/11114/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM