【发布时间】:2015-06-15 12:24:17
【问题描述】:
我有一个带有 websockets 的 react/flux 应用程序可以正常工作。所有通信都发生在我的WebSocketUtils 文件中。每当我从服务器接收到新数据作为推送事件时,我都会触发action 并让整个 Flux 流发生。最后导致我的视图重新呈现。
各个视图通过Higher Order Components 连接到我的商店。所有新数据都作为道具传递到我的view。由于这些是可变的,我使用这些道具并将它们设置为我的初始状态(which is ok)。
现在假设我有用户 A 和用户 B 正在查看我的应用程序的同一个视图(当然是在不同的机器上)。
- 用户
A编辑了一些数据 - 用户
B也编辑了一些数据 - 用户
A保存此新数据 - 用户
B通过推送事件接收到新数据,视图将重新渲染
问题:用户B丢失了所有已编辑但尚未保存的数据。
任何想法如何解决这个问题?
【问题讨论】:
-
最重要的问题是用户期望在这种情况下发生什么(当
B有未保存的数据应该由A更改时)?根据他们的要求,它可能会导致非常复杂的设计。