2017-05-04 30 views
1

我对React和Redux来说很新颖,过去一周里我一直在设置自己的环境。刷新“按钮”,只有在道具已经改变时才刷新组件

我想知道他们是不是刷新整个页面的刷新按钮,而只是包含商店中已更改道具的组件。

实施例:

  • USER_1改变存储。
  • User_2单击他的页面(容器)上的刷新按钮。
  • 包含已修改道具的组件将刷新为User_2。

完美的情况是User_2的界面组件会在User_2执行操作后立即刷新,但我认为它不可能。 (如果是,请注明吧)

在此先感谢

UPDATE:
如果使用GraphQl,这是值得探讨的 “订阅” 的解决方案。

+1

您基本上需要一个连接并更新商店的websocket,可能通过中间件。 – corvid

回答

0

如果你的两个用户在不同的计算机上,那么它们之间的商店就不会共享。对一个用户的商店所做的更改不会影响第二个用户的商店。

这听起来像你真正想要的是websockets。但是这将是你首先需要用你的应用程序的服务器端进行管理的东西,而哪个react/redux只会消耗。

一般情况下,组件会一直立即当它们的道具改变时更新。如果一个组件没有更新,那么它的道具仍然是一样的。

+0

继续您的网络套接字解决方案。两个用户的商店是否总是连接在一起,还是我需要触发一个动作让他们进行沟通? – petithomme

+0

或者user_1的商店是否会对API进行更改,然后user_2的商店需要获取这些新值并刷新其组件? – petithomme

+0

Websockets是一个完全独立的技术。您如何选择将这些集成到反应/ redux前端完全取决于您。 – gravityplanx