React-Redux Zustand beeinflussen Ich habe einrichten Reagieren + Redux und hinzugefügt socket.io zu. Bei einem UI-Eingabefeld, wenn ich etwas geben, kann ich es zu Aktion übergeben, dann die Buchse, dann strahlen das Signal an alle Browser die Seite zu besuchen.Sockel io.emit
Ich weiß io.on ('action', data => console.log (Daten)) ist der Weg für jeden Browser, um das Signal, das von Buchse übertragen zu empfangen. Aber wenn ich wünsche, dieses Signal zu verwenden, um den Zustand in jedem Browser zu aktualisieren, so werde ich es Platz in der Aktionsdatei oder die Redux-Datei?
Code anwenden:
io.on('action', data => console.log(data)) //will write something to update the state
Aktion Datei extrahieren:
export const handleNameInput = (name) => {
return {
type: InviteeActionTypes.ADD_HANDLENAMEINPUT,
meta: {remote: true},
name
};
}
redux Datei extrahieren:
case InviteeActionTypes.ADD_HANDLENAMEINPUT: {
return {
...state,
pendingGuest : action.name
};
}
Server-Datei Code:
var http = require('http');
var server = http.createServer();
var socket_io = require('socket.io');
server.listen(4000);
var io = socket_io();
io.attach(server);
io.on('connection', function(socket){
console.log("Socket connected: " + socket.id);
socket.on('action', (action) => {
if(action.type === 'invitee/ADD_HANDLENAMEINPUT'){
console.log('Data : ', action.name);
io.local.emit('action', {type:'message', data:action.name});
}
});
});
Linking https://stackoverflow.com/questions/39527684/using-socket-io-with-redux – Dane