【发布时间】:2015-01-20 05:31:23
【问题描述】:
我正在处理一个 GWT 项目并在某些事件上对 javascript 函数进行 JSNI 调用。
问题是在我的事件触发后(在选项卡加载时),甚至在加载 javascript 和 css 之前就调用了对 js 函数的 jsni 调用,因此它给出了函数不存在的错误。
处理这种情况的最佳方法是什么?
【问题讨论】:
标签: javascript gwt smartgwt jsni
我正在处理一个 GWT 项目并在某些事件上对 javascript 函数进行 JSNI 调用。
问题是在我的事件触发后(在选项卡加载时),甚至在加载 javascript 和 css 之前就调用了对 js 函数的 jsni 调用,因此它给出了函数不存在的错误。
处理这种情况的最佳方法是什么?
【问题讨论】:
标签: javascript gwt smartgwt jsni
最好的方法是将外部脚本插入到 index.html 文件的标题中(或任何为 gwt nocache 文件提供服务的文件)。
<header>
<script type="text/javascript" src="my-erternal-js.js"></script>
</header>
这样您可以在 GWT 尝试从 JSNI 调用它之前共享 JavaScript 文件已加载。
【讨论】:
听起来您想要注入脚本并在回调中运行您的代码,该回调仅在脚本完成加载时触发。 ScriptInjector 就是这样做的。
【讨论】: