当用户访问该站点时,将在客户端和服务器端创建一个空的购物车。当他将产品添加到SC中时,会进行RPC调用以在服务器端添加产品。我们需要做同一个客户端来同步并更新UI。如果我们不这样做,并切换到一个参考旧SC的视图。用户界面不会相应更新(空SC,而其中有一个产品)。GWT保持同步客户端和服务器型号
解决方案1
RPC调用返回更新SC和做clientSC = returnedSC
。这不是非常有效,因为通过电线传输大量数据。
溶液2
RPC调用返回时添加的产品和在客户端侧,调用一个方法addProduct
,该产品添加到列表中,而不是在数据存储中存储它的(如在服务器端) 。
溶液3
同溶液2,但使用一个事件以通知有一个SC的参考演示者(I使用MVP模式)。
哪一个是最好的,更一般的什么是保持客户端和服务器模型同步的最佳实践?