3
目前我有使用這樣的GWT CssResource應用...人會究竟是如何重寫CssResource
interface MyClientBundle extends ClientBundle{
@Source("images/one.png")
Image someImageThatAlwaysLooksTheSame();
@Source("images/two.png")
Image someImageThatDependingOnTheClientThemeChanges();
@Source("css/main.css")
MyCssResource css();
}
然後是CssResource接口
interface MyCssResource extends CssResource{
String someStyleThatNeverChanges();
String someStyleThatChangesDependingOnTheClient();
}
如果我重寫MyClientBundle創建和稱爲MyPink主題客戶端的接口
interface MyClientBundle extends ClientBundle{
@Source("images/one.png")
Image someImageThatAlwaysLooksTheSame();
@Source("images/**twoPinkVersion**.png")
Image someImageThatDependingOnTheClientThemeChanges();
@Source("css/**mainPinkVersion**.css")
MyPinkCssResource css();
}
然後當然MyPinkCssResour CE擴展MyCssResource
interface MyPinkCssResource extends MyCssResource{
}
我的問題是,當我嘗試編譯這個GWT編譯器抱怨說,「CSS/mainPinkVersion.css」缺少樣式名稱「someStyleThatNeverChanges」。我會認爲一個cssresource接口會繼承它的超類的後援css文件。如果情況並非如此,是否有可能實現擴展CssResource並覆蓋您關心的類的效果,但是否則使用超類的後備.css文件?
我得到「錯誤:標註來源缺少的屬性值值」時,我嘗試有2個逗號分隔的css文件。試過GWT 2.5.1和2.6.0。實際上這來自Netbeans下的Java編譯器,而不是GWT編譯器。你有同樣的問題嗎? – Budric 2014-04-16 16:25:58
像@Source({「main.css」,「myPinkVersion.css」})將值放在大括號中(因爲註釋被定義爲String [])可以避免java編譯器錯誤。我不確定你們是如何在你的系統上編譯它,而不是得到這些錯誤。 – Budric 2014-04-16 17:29:41
@Budric - 感謝您的信息。我更新了答案。 – 2014-04-23 01:43:02