我正在构建一个从外部来源接收更新的应用。 (假设更新是股票报价,偶尔出现,每10-60秒。)
每个客户页面可能会显示有趣股票的完整列表,或者关注单个股票。当服务器接收该页面上显示的股票的新数据时,任何页面上的组件都应该更新。
我的问题:
react
,react
,react-redux
模块是否可以处理服务器端更新与开箱即用的浏览器中的客户端组件之间的通信? (显然我将不得不编写actions / reducers / etc。)或者我是否还需要编写将这些更新从服务器传递给客户端的代码?
我设想启动服务器端进程,该进程从主server.js代码接收库存更新,该代码也会触发listen(3000)
调用。该库存更新流程如何才能访问redux商店? (我的困惑是因为在我读过的大多数Express示例中,createStore()调用都在app.use('/', ...)
内,因此每次有新的Web请求进入时都会生成商店。)
任何类似于我想做的项目的指针?感谢。
答案 0 :(得分:3)
简而言之,您需要做的是,
答案 1 :(得分:2)
nope既不反应也没有redux处理服务器端和反应组件之间的通信(clientside)
服务器和客户端之间的通信属于动作和动作创建者,在这种情况下,你可以对服务器进行ajax调用(通过轮询),状态可以是一个布尔提取,获取,faliure所有这些都需要在与响应对象一起存储。
关于服务器端库存更新过程的问题,没关系,因为只有实现者才知道初始状态是什么,因此要问的问题是,调用createstore()和调用什么是重要的它是应用程序的初始状态。 在你的情况下,createStore可以配置为这样一种减速器,它在主服务器的时间点取出库存.js
你也可以查一下 relay and graphql ,它带有网络层,用于默认与服务器通信,所有这些都试图管理应用程序状态答案 2 :(得分:1)
[回答我自己的问题]上面各种贡献者的回答是正确的,非常有用,但我一直在(重新)学习如何用react和redux构建应用程序。我想分享我的新知识:
Christophe Coenraets写了一篇与我的用例完全匹配的博文:Real Time Trader Desktop with React, Node.js, and Socket.io
我写了一篇博文,总结了我在2016年中期开始使用React编程所学到的知识:Getting Started with React Development