有没有人能够将LESS的精彩缺省语法与GWT UiBinder的令人敬畏的模块,重新因子友好和类型安全的CSS集成?
<ui:style with="com.lesscss.gwt">
.selector{
/* Can I haz LESS in here? */
}
</ui:style>
当然,你可以使用LESS和GWT - 你只需要使用非编译的CSS。我希望我的css通过LESS编译器,然后是GWT编译器。
答案 0 :(得分:5)
没有直接的库,没有。
LESS甚至没有java编译器,所以我真的认为它不会发生。
假设您可以编写一个预编译例程,该例程将遍历您的ui.xml文件,编译ui:style节点的内容并将编译后的版本放回原处。然后,您将遇到IDE抱怨不正确的CSS代码的连续问题。
答案 1 :(得分:2)
如前所述,没有图书馆直接这样做。但现在有了!)!
我最近编写并发布了一个库(HexaCss用于GWT),它允许将GWT应用程序绑定到外部CSS文件,同时保持类型安全和优化,如修剪和css名称混淆。
你像传统的CssResource一样使用它(所以类型安全),但不是绑定到CSS文件在GWT项目中,它绑定到你想要的任何外部CSS文件(你甚至可以将多个CSS文件绑定到同一个应用程序)它为您的GWT应用程序提供主题。)
因此,在您的情况下,外部CSS文件将使用HexaCss生成。这就是我在许多项目中所做的。
您甚至可以使用Sass,GSS等。您还可以使用已编写的Bootstrap和Skeleton绑定。
一个类似于你的问题的样本是这个,其中CSS用Less生成,并在GWT中与HexaCss一起使用,然后可以直接从UiBinder或Java使用。
链接到示例:http://lteconsulting.fr/hexacss/demo/sample3/index.html - 这是一个非常难看的演示,只显示了这个想法。您可以使用顶部的列表框切换主题。
希望这有帮助!