1

我一直在相当成功地在 SmartGWT 小部件上使用 UIBinder。但是,我必须扩展我使用的每个 SmartGWT 小部件以符合 UIBinder 的要求。有时,我必须将 SmartGWT 小部件伪装成 com.google.gwt 命名空间,或者将非 GWT 小部件伪装成 GWT 小部件。我根据需要扩展小部件。

所以,我开始怀疑,可能 SmartGWT 已经有了 UI XML 格式,而我可能正在做所有这些 UIBinder 适应,只是为了重新发明 SmartGWT 的轮子。

我已经阅读并重新阅读了展示的源代码,并深入研究了一些 SmartGWT 源代码,以及阅读了 javadocs。

我发现的只是用于服务器和客户端之间通信的 XML 或 Json。

是否有任何可用于 SmartGWT 的 UI def XML,无论是 gwt 编译为客户端 javascript 还是像 Vaadin 的服务器端生成的 UIDL?

如果你碰巧是一个 Isomorphic 代理,你能告诉我们是否有任何计划让 SmartGWT 与 UIBinder 一起玩(这样我就不必再自己按摩 SmartGWT 小部件了)?

4

2 回答 2

2

是的,有一个 SmartGWT XML 组件定义 - Visual Builder 和 Reify 使用的定义,您也可以直接编写它。请参阅这些文档和此常见问题解答项目:

http://www.smartclient.com/smartgwtee-latest/javadoc/com/smartgwt/client/docs/ComponentXML.html http://forums.smartclient.com/showthread.php?t=8159#loadVBScreen

正如常见问题解答所阐明的那样,我们建议将这种 XML 格式用于一组与 UIBinder 的用途有很大重叠的用例,也就是说,将您的布局和基本组件定义保持在设计人员可以编辑的声明性格式中,并且可以通过以下方式进行编辑可视化工具,并将您的实际 Java 事件处理和其他编程代码分开。

然而,我们强烈建议不要将该声明性格式设为 HTML(正如 UIBinder 所做的那样),因为这会引入大量跨浏览器布局问题。

对于少数使用我们自己的 XML 格式并不冗余的用例,我们很可能最终也支持 UIBinder。如果您需要尽快实现,请考虑功能赞助:

http://www.smartclient.com/services/index.jsp#features

于 2010-06-07T22:42:51.793 回答
0

对于 XML,智能客户端有 componentxml,它是基于 XML 的 ui 设计并使用 JavaScript 来实现客户端逻辑。您无需每次在开发环境中编译您的应用程序,只需重新加载浏览器即可包含更改,您可以对其进行测试。

于 2019-02-16T19:31:53.383 回答