首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何准确地覆盖CssResource

如何准确地覆盖CssResource
EN

Stack Overflow用户
提问于 2011-05-10 08:25:27
回答 1查看 1.4K关注 0票数 3

目前,我在gwt中有一个使用CssResource的应用程序,如下所示...

代码语言:javascript
复制
interface MyClientBundle extends ClientBundle{

@Source("images/one.png")
Image someImageThatAlwaysLooksTheSame();

@Source("images/two.png")
Image someImageThatDependingOnTheClientThemeChanges();

@Source("css/main.css")
MyCssResource css();

}

然后是CssResource接口

代码语言:javascript
复制
interface MyCssResource extends CssResource{

String someStyleThatNeverChanges();

String someStyleThatChangesDependingOnTheClient();

}

如果我重写MyClientBundle以创建名为MyPinkThemedClientBundle的接口

代码语言:javascript
复制
interface MyClientBundle extends ClientBundle{

@Source("images/one.png")
Image someImageThatAlwaysLooksTheSame();

@Source("images/**twoPinkVersion**.png")
Image someImageThatDependingOnTheClientThemeChanges();

@Source("css/**mainPinkVersion**.css")
MyPinkCssResource css();

}

当然,MyPinkCssResource对MyCssResource进行了扩展

代码语言:javascript
复制
interface MyPinkCssResource extends MyCssResource{


} 

我遇到的问题是,当我尝试编译这段代码时,GWT编译器报告"css/mainPinkVersion.css“缺少样式名称"someStyleThatNeverChanges”。我本以为cssresource接口会继承其超类的支持css文件。如果不是这样,有没有可能达到这样的效果:能够扩展CssResource并覆盖您关心的类,但是使用超类的支持.css文件?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-08-24 08:29:44

我几乎就遇到了这个问题。我在阅读the @Import example in the GWT documentation之后提出的解决方案如下所示。在MyPinkThemedClientBundle中,您需要将css()方法定义为:

代码语言:javascript
复制
@Source({"main.css", "css/**mainPinkVersion**.css"})
MyCssResource css();

如果您只是覆盖已定义的CSS条目,而不是创建任何需要在代码中访问的新条目,那么您将不需要MyPinkCssResource类型。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5943895

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档