2012-08-31 73 views
1

我正在爲GWT編寫自定義單元,但要顯示的數據將被異步提取(REST調用)。如何爲單元格渲染異步?我看到ImageLoadingCell顯示一個微調,然後顯示圖像,當它被加載,這是由一個瀏覽器事件完成,但是,因爲我是一個REST調用,我不能使用onBrowserEvent()方法,因此,我不能使用onBrowserEvent()方法,因此,我沒有Element的句柄來刷新它的信息。GWT Cell Callback

我在想也許我必須通過table.refresh()來做到這一點?但是我真的很喜歡渲染方法來觸發抓取。

回答

0

如果你看一下電池部件的目標,那麼我不認爲這是可能的,肯定是不可取的:

電池部件(數據呈現小部件)是高性能, 輕量級小部件組成用於顯示數據的單元格。

我遇到了類似的問題:假設你有一個標籤列表的聯繫人,但只有tagIds與聯繫人一起存儲。爲了可視化表格中的標籤,您必須回調服務器才能獲取名稱。

解決方案是使用適配器模式。創建一個保存聯繫人和實際標籤而不是tagIds的ContactAdapter。使用基於tagIds的標籤預先填充聯繫適配器,並將List設置爲您的單元格的數據源。

+0

我基本上做了這樣的事情。我創建了一個映射,並將來自REST調用的返回值存儲爲值。當列請求的值,如果我沒有在地圖中,我做的REST調用,如果我有它,我將它返回。 Cell必須知道它可能會得到一個空值。 – Joel