當用戶訪問該站點時,將在客戶端和服務器端創建一個空的購物車。當他將產品添加到SC中時,會進行RPC調用以在服務器端添加產品。我們需要做同一個客戶端來同步並更新UI。如果我們不這樣做,並切換到一個參考舊SC的視圖。用戶界面不會相應更新(空SC,而其中有一個產品)。GWT保持同步客戶端和服務器型號
解決方案1
RPC調用返回更新SC和做clientSC = returnedSC
。這不是非常有效,因爲通過電線傳輸大量數據。
溶液2
RPC調用返回時添加的產品和在客戶端側,調用一個方法addProduct
,該產品添加到列表中,而不是在數據存儲中存儲它的(如在服務器端) 。
溶液3
同溶液2,但使用一個事件以通知有一個SC的參考演示者(I使用MVP模式)。
哪一個是最好的,更一般的什麼是保持客戶端和服務器模型同步的最佳實踐?