【发布时间】:2010-12-21 01:15:00
【问题描述】:
我有几个关于基于模块化 GWT 的应用程序框架的问题。我对它们有一些想法,但是对于 Web 开发领域的新手来说,我觉得它们远非理想。在这方面,我很感激一些 cmets 和建议。以下是我的问题:
我正在开发一个框架,它允许第三方将 GWT 应用程序嵌入到我们的网站中,并使用简单的 iFrame postMessage 与他们进行一些通信。所有这些第三方模块都将使用我们同样基于 GWT 的 SDK。问题出现了,即使所有模块都将使用相同的代码库,在客户端机器上下载的重复 Javascript 代码(即我们的通用 SDK 代码库非常大)的数量也会大量偷听。这是高度冗余和有问题的,不仅因为重复代码的庞大规模,而且还因为 SDK 的后续更新需要重新编译模块,这将在长跑。做这种事情的最好方法是什么?有没有一种方法可以让我拥有一些静态 GWT 代码(即 SDK)并且动态 GWT 模块引用它(即使位于不同的域中)并且一切正常?
问题的另一部分在于为 SDK 提供强大的脚本前端。起初它似乎是微不足道的,因为 Javascript 本身是一种脚本语言。但是,我不知道如何在运行时加载和调用一段纯Javascript代码?我愿意对目标 Javascript 施加限制(即拥有一个函数 main 和唯一的命名空间或其他东西)。此外,Javascript 将作为来自数据库的字符串而不是完整的 URL。如果它在 Javascript 中是可行的,那么如何在 GWT 中做到这一点,即强制编译器在生成的 Javascript 中发出某个函数?我相信通过使用具有所有正确要求的存根 Javascript 来加载 GWT 生成的 Javascript 可以减少问题。这有可能吗?
我通常讨厌这么冗长,但我希望找到一个快速解决问题的方法,因为它阻碍了我的进步。我非常感谢任何 cmets、建议和经验。
【问题讨论】:
标签: javascript html web-applications gwt ria