我为一个Javascript可视化库(dygraphs)编写了一个GWT库。
它是一个简单的包装器,使用
到目前为止,我已经在我的GWT模块XML文件中包含了
然而,最近我尝试使用
在使用跨站点链接器的情况下,将外部Javascript脚本包含进GWT库的最佳实践是什么?
我能想到的最好的方法是将Javascript文件作为
这是推荐的方法吗,还是有更好的方法?
我必须确保dygraphs.js在使用我的GWT包装器的应用程序访问它之前完全加载。
它是一个简单的包装器,使用
JavascriptObject
和JSNI
来调用dygraphs代码。到目前为止,我已经在我的GWT模块XML文件中包含了
dygraphs.js
脚本,并且它工作得很好。然而,最近我尝试使用
SuperDevMode
时,不得不切换到xsiframe linker
,它不允许脚本标签。在使用跨站点链接器的情况下,将外部Javascript脚本包含进GWT库的最佳实践是什么?
我能想到的最好的方法是将Javascript文件作为
TextResource
包含在ClientBundle
中,然后使用ScriptInjector来包含它?这是推荐的方法吗,还是有更好的方法?
我必须确保dygraphs.js在使用我的GWT包装器的应用程序访问它之前完全加载。
with
,那么GWT JSNI不支持with
。 - Colin Alworthcom.google.gwt.dev.jjs.JavaToJavaScriptCompiler.optimizeJs(JJSOptions, JsProgram)
在2.4和一些早期版本中尝试对JS AST进行优化。只能进行简单的操作 - 将if语句重写为三元运算符,将字符串内联等,但它仍然可以运行。 - Colin Alworth