这个问题最好用一个例子来描述。
我的 GWT 应用程序中有以下 ClientBundle:
interface Resources extends ClientBundle {
public static final Resources INSTANCE = GWT.create(Resources.class);
@Source("defines.css")
Defines defines();
@Source("appStyle.css")
@CssResource.NotStrict
Style style();
interface Style extends CssResource {
String appLogo();
(...)
}
interface Defines extends CssResource {
String formInputBackgroundColor();
String formInputBorderColor();
(...)
}
}
是应用程序使用的appStyle.css
主要样式表,并且defines.css
是仅包含常量的样式表,例如:
@def formInputBackgroundColor #D8ECFD;
@def formInputBorderColor #7FAAFF;
(...)
现在我可以defines.css
在 UIBinder 模板和应用程序代码中使用样式表中的常量而不会出现问题,但我不能在我的appStyle.css
.
我已经尝试用 替换interface Style extends CssResource
,interface Style extends Defines
希望从Defines
样式表继承可以让我访问“子”Style
样式表中的常量,但是 GWT 编译器抱怨如下错误:
Rebinding my.project.client.resources.Resources
Creating assignment for style()
Replacing CSS class names
The following obfuscated style classes were missing from the source CSS file:
formInputBorderColor: Fix by adding .formInputBorderColor{}
formInputBackgroundColor: Fix by adding .formInputBackgroundColor{}
(...)
有什么办法可以做到这一点?