6

我正在研究将Bootstrap库与 GWT 一起使用的最佳实践。我不喜欢使用GWT-Bootstrap项目,而是喜欢在我的 GWT 应用程序中使用纯 css 和 js Bootstrap 库。

我正在搜索如何将 Bootstrap 样式应用于 GWT UI 组件?我是否需要通过处理 GWT 组件的 DOM 元素在 UI 视图代码中执行此操作?或者有没有其他干净的方法来实现 GWT 和 Bootstrap 的这种集成?

4

2 回答 2

12

不,没有办法简单地将引导样式添加到 gwt 组件。您将不得不处理 DOM,删除一些 GWT CSS 类并添加 GWT 类,并且,至少您将代码从一个地方复制到任何地方,您将创建一个扩展原始组件的类并在任何地方使用这个新类,这基本上就是 GWT-Bootstrap 所做的。

我知道这一点是因为大约一年前,我想做你现在所说的:以一种干净的方式将引导样式应用于 GWT 组件,然后,我设法让它工作,并开始 GWT-Bootstrap 开发。

GWT-Bootstrap 实际上已经解决了大部分 gwt+bootstrap 集成错误,并且基本上适用于任何项目。我知道有些组件还没有实现或者有错误,但是,也许你可以修复一些并提出一个请求,恕我直言,这比重建所有的东西要好。

于 2012-10-26T10:33:50.547 回答
2

您当然可以在没有第三方包装库的情况下使用 Bootstrap 和 GWT,addStyleNames在 UiBinder XML 中添加具有属性的 Bootstrap 的 CSS 类或在 Java 代码中使用相同的方法。但 Bootstrap 也大量使用自定义数据属性data-toggle,例如让“魔法”发生。由于 GWT 的默认小部件(FlowPanel等)不提供这些自定义属性的设置器,因此您无法在 UiBinder XML 中设置它们并发现自己编写了很多

getElement().setAttribute(...)

在您的 Java 代码中。

这就是GWT-BootstrapGwtBootstrap3等包装库的用途。它们提供包装这些功能的自定义小部件,以便您可以像使用默认 GWT 小部件一样使用 Bootstrap 小部件。

于 2013-08-18T10:52:56.033 回答