2015-09-25 44 views
0

我想弄清楚如何使用socket.io旁邊我的react/redux應用程序,並看到我可以優化多少時,這樣做。因此,在服務器上我和你可以在這裏看到插座一個非常基本的設置:(React/redux)使用套接字與REDX只發送改變的狀態

store.subscribe(() => { 
    io.emit('state', store.getState().toJS()); 
}); 

io.on('connection', (socket) => { 
    socket.emit('state', store.getState().toJS()); 
    socket.on('action', function (action) { 
     action.headers = socket.request.headers; 
     store.dispatch(action); 
    }); 
}); 

所以與衆不同的唯一的事情是,我只是堅持請求頭到後來的操作使用。我想嘗試和實現是這樣的 -

io.connections[i].emit('state') 

,並添加

​​

的想法是,這將讓我遍歷所有連接,然後使用該連接的插座當時要求特定用戶。我不知道是否可以這樣做,並且在處理僅返回用戶特定信息的過程中尋找一些可能的反饋。只發送由動作改變的狀態部分(而不是整個狀態)也是很酷的,然後讓前端商店組裝狀態。任何/所有的輸入都比歡迎,謝謝!

回答

1

看起來這不是REDX的問題來處理這個邏輯,你把它放在一些模塊中,並使用中間件連接到狀態,或者只是使用「從外部」使用狀態對象。談到國家管理,你想要實現什麼?看起來像是swarm.js或diffsync等CRDT的情況。