2013-02-07 99 views
3

我有一个使用外部JavaScript库向我的应用程序添加功能的GWT(well,GXT)应用程序。我的应用程序也必须脱机工作,这是我的问题。如何在GWT离线应用程序中包含外部Javascript

我知道,将文件添加到公用文件夹将使他们可以通过我的GWT应用程序访问它们,但这在脱机使用的情况下不起作用。 GWT编译我的应用程序使其可以在没有问题的情况下脱机使用,但它不包括外部JavaScript库。

因此,无论何时我在应用程序内部工作并达到需要所述库的点时,浏览器都会尝试GET请求,因为库尚未加载并且不会保留在浏览器的缓存中。

有没有办法将库添加到我的应用程序,以便它将与我的GWT应用程序一起缓存?该库由几个文件夹,JS文件,图像,CSS等组成。我唯一的想法是动态创建一个Appcache Manifest,用于转储浏览器缓存中的所有文件。在这种情况下,我害怕打破GWT离线功能。

回答

3

是的,你可以在编译时生成清单。只需使用扩展com.google.gwt.core.ext.linker.AbstractLinker的链接器即可。

见例如this example manifest linker 或看Writing a GWT Linker 或看到this stackoverflow thread

我这样做,包括谷歌的字体,并产生一个清单,将只包含特定语言排列文件。

+0

谢谢!链接器正是我所期待的。需要调整我的应用程序一点,以包括一切,但它工作正常,据我所知。 – codemo

相关问题