GWT ScriptInjector VS 将脚本标签添加到 index.html 页面

Posted

技术标签:

【中文标题】GWT ScriptInjector VS 将脚本标签添加到 index.html 页面【英文标题】:GWT ScriptInjector VS adding script tag to index.html page 【发布时间】:2015-06-27 12:53:44 【问题描述】:

为什么要使用ScriptInjector 类。

使用ScriptInjector注入js文件和直接在index.html文件中添加带有<script>标签的链接有什么区别。 与在index.html 文件中添加脚本标签相比,使用ScriptInjector 有什么优势吗?

我想到的一件事是,如果您使用 <script>index.html 文件中添加大量脚本,这些脚本将在以后使用,那么初始负载可能会更多。 ScriptInjector 将通过仅在需要时异步加载脚本来减少初始负载。

【问题讨论】:

【参考方案1】:

使用ScriptInjector 的主要优点是您可以利用Java 语言在您的页面中注入JS 文件(或JS 代码)。在 GWT 应用程序的上下文中,这比使用 JSNI 更干净。

您说得对,在 HTML 文件前面添加 <script> 标记可能会导致性能问题。

【讨论】:

【参考方案2】:

使用 ScriptInjector 的优点是

ScriptInjector 根据可以注入脚本(js)的条件动态创建脚本标签并附加到DOM含义。 如果我们在主机页面上包含大量脚本标签,这将花费大量时间来加载脚本标签(而且它会阻塞直到它被执行)。

【讨论】:

【参考方案3】:

您已经描述了其中一项关键优势。

另一个优点是某些脚本可能永远不会被使用。例如,您可能有一个集成 Google Wallet 支付或 Facebook 登录的脚本,但并非每个用户每次都需要这些功能。所以没有理由在实际需要之前加载这些脚本。

【讨论】:

以上是关于GWT ScriptInjector VS 将脚本标签添加到 index.html 页面的主要内容,如果未能解决你的问题,请参考以下文章

gwt-rpc vs rest ......真的是其中之一吗?

JQM vs GWT mobile vs Sencha

GWT vs Spring:如果我更改页面,applicationContext 为空

GWT 和自动填充

用大量参数编译 GWT 代码——CreateProcess 的字符限制?

从 html 脚本标签调用 GWT Java 函数