2010-10-26 62 views
2

我在我的GWT應用程序中使用樹控件。樹根據用戶登錄有不同的項目。填充樹的一種方法是從我的GWT代碼查詢服務器以獲取樹項目列表。但是因爲這些項目總是會顯示出來,所以在頁面本身中包含關於它們的信息會更好嗎?我正在尋找意見來實現這一目標。是否有可能得到像Django這樣的模板引擎,以便在服務時將這些值插入到GWT字符串變量中?然後我可以使用這些字符串變量來填充樹。還是有更好的方法來實現這一目標?GWT用Django模板設置變量值

回答

2

我在GWT組last year中回答了一個非常類似的問題,所以你可能想看看那裏。


的想法,就像你說的,是嵌入主機頁面內這個數據,而不是射擊應用程序的初始化過程中額外的GWT RPC請求。您可以:

  1. 嵌入主機中的網頁JavaScript變量內的數據,並使用Dictionary

    這是一個簡單的解決方案,特別是如果你的數據是可序列化的字符串的字典訪問它。您可以使用您選擇的模板引擎將這些數據插入主機頁面(Django's,Mustache,FreeMarker,JSP ...)。

  2. 嵌入主機頁面內GWT-RPC有效載荷,如解釋herethere

    這是更好,如果你需要序列化整個對象圖(這可能是你想要什麼,你的樹部件,根據在其複雜性)。它就像一個標準的GWT-RPC請求,但不是在啓動時發送HTTP請求,而是在您提供服務時將GWT-RPC「響應」嵌入您的主機頁面中。

+1

這是正確的答案。另一個教程在這裏:http://code.google.com/webtoolkit/articles/dynamic_host_page.html – 2010-10-26 20:40:05

+0

哇,很好的文章。沒有考慮使用JSNI來訪問嵌入式數據,但它也是有道理的。 – 2010-10-26 20:44:12