簡體   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