GWT:延迟加载外部JS资源

前端之家收集整理的这篇文章主要介绍了GWT:延迟加载外部JS资源前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个小部件,取决于一些外部JS文件,我想懒惰加载所有这些外部资源.我已经使用代码分割来懒惰加载涉及窗口小部件的GWT代码,但使用脚本标记在gwt.xml中定义的JS文件无论如何都是加载的,这是不可取的.

是否有按需加载这些外部资源的标准GWT方式?我可以使用原始的JS自己做,但我宁愿不花时间在这也.

解决方法

我想你会想看看com.google.gwt.core.client.ScriptInjector类. From the javadocs

Dynamically create a script tag and attach it to the DOM.

Usage with script loaded as URL:

ScriptInjector.fromUrl("http://example.com/foo.js").setCallback(
     new Callback<Void,Exception>() {
        public void onFailure(Exception reason) {
          Window.alert("Script load Failed.");
        }
        public void onSuccess(Void result) {
          Window.alert("Script load success.");
        }
     }).inject();

这段代码当然可以在你的分割点内,也可以在代码的任何地方被调用.

猜你在找的JavaScript相关文章