Skip to content

Instantly share code, notes, and snippets.

@rijkvanzanten
Created October 19, 2016 15:11
Show Gist options
  • Select an option

  • Save rijkvanzanten/e1f3c04635495f57aa27bfec6ee4be21 to your computer and use it in GitHub Desktop.

Select an option

Save rijkvanzanten/e1f3c04635495f57aa27bfec6ee4be21 to your computer and use it in GitHub Desktop.
Redux Action Middleware which forwards actions to the server via socket.io when `server: true` is set in action object
const createSocketMiddleware = function(socket, {eventName = 'action'} = {}) {
return ({dispatch}) => {
socket.on(eventName, dispatch);
return (next) => (action) => {
if(action.hasOwnProperty('server')) socket.emit(eventName, action);
return next(action);
};
};
};
export default createSocketMiddleware;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment