我们正在使用React构建我们的客户端应用程序,并且应用程序状态由Redux管理。我们打算做的是注册外部数据流,这样每当发出新数据时,应该更新应用程序状态。
Redux可以直接注册服务器流还是我们需要使用任何redux中间件来实现这一目标?
答案 0 :(得分:1)
在Redux应用程序中,中间件是处理外部连接(如websockets)的标准位置。现有许多用于处理websockets和Firebase等特定服务的中间件。有关示例,请参阅"Middleware - Sockets and Adapters"的Redux addons catalog部分。
答案 1 :(得分:0)
您需要获取Redux商店的引用并致电dispatch
。
这是使用socket.io
的代码段const store = createStore(reducer, initialState);
// ... some code to initialize socket.io
socket.on('receiveAction', data => {
store.dispatch({
type: 'ACTION_TYPES',
payload: data
});
});
如果您需要从单独的文件中导出/导入商店。