我下面這個博客和產生的問題是我實現Reactjs不要重複我的消息後,更新狀態
https://github.com/DanialK/ReactJS-Realtime-Chat
彙總後的例子,之前通過發送郵件的WebSocket的狀態更新消息。 當服務器收到該消息時,他們向所有客戶發送廣播,包括我自己。 Thereat,客戶端更新與此相同的消息的狀態
爲什麼此消息不會出現2次? 我不希望這樣的消息出現2次,但我想知道爲什麼會發生
客戶端代碼:
socket.on('send:message', this.messageRecieve);
...
handleMessageSubmit : function(message){
Messages.push(message);
this.setState({ messages : Messages });
socket.emit('send:message', message);
},
messageRecieve: function(message){
Messages.push(message);
this.setState({ messages : Messages });
},
Server代碼:
socket.on('send:message', function (data) {
socket.broadcast.emit('send:message', {
user: name,
text: data.text
});
});
我沒有收到我自己的消息? – patricK 2014-09-01 02:11:46
我們不知道您是否收到此消息,請查看您的日誌並告訴我們。我們不知道這是一個React渲染問題還是一個WebSocket /服務器問題... – 2014-09-01 08:19:06
我問過這個,因爲我懷疑這會是socket.io的行爲... – patricK 2014-09-01 20:48:02