2010-04-09 124 views
1

我有一個很大的GWT模塊,它由許多Java類組成(當然,它不可能分解成幾個模塊)。如何將GWT模塊分成幾個獨立的javascript文件?

我的GWT應用程序由一些表單組成,但用戶通常只與其中一些表單一起工作,無論如何他們應該能夠根據需要打開任何表單。

現在我的問題是gwt生成一個大的js文件,每次都會加載,但其大部分內容可能永遠不會使用!

有沒有什麼辦法可以將大的js模塊文件分解成幾個較小的文件(例如,每個類有一個文件)& gwt根據需要自動加載它們?

回答

3

需要編寫代碼分裂 - http://code.google.com/webtoolkit/doc/latest/DevGuideCodeSplitting.html

概念,認爲你代碼開始您的onModuleLoad()方法中的一棵樹。每個方法調用都是該樹中的一個分支。現在,GWT的代碼拆分是一個斧頭,你可以在任何分支上砍樹。你可以在任何地方和任何你想要的次數切割你的樹。

在啓動時,GWT將只加載包含onModuleLoad的樹的部分。其他人將在您第一次訪問該部分時加載。在代碼方面,其他分支會被同步加載,並且在加載完成後會通過回調通知您。

閱讀上面粘貼的鏈接上的文檔。它有足夠的材料讓你開始。

相關問題