【发布时间】:2012-04-09 05:05:04
【问题描述】:
我正在开发一个包含许多不同组件的 Wicket 1.5 Web 应用程序,并且我有兴趣让用户在不同的主题之间进行选择(这意味着更改某些组件的 CSS 样式)。因此,我将以某种方式将所选主题与用户会话相关联。
我的问题是,在 Wicket 中执行此操作的最佳方式是什么?
现在我的组件如下所示:
public class SingleLayout extends Panel {
public static final CssResourceReference CSS = new CssResourceReference(SingleLayout.class, "SingleLayout.css");
public SingleLayout(...) {
super(...);
}
protected CssResourceReference getCssResourceReference() {
return CSS;
}
@Override
public void renderHead(IHeaderResponse response) {
super.renderHead(response);
response.renderCSSReference(getCssResourceReference());
}
}
我理想的“主题系统”解决方案是:
- 如果当前主题中未定义此组件的 CSS,则组件将具有默认工作的 CSS。
- 这些组件也可以在没有此主题系统的其他应用程序中工作。
【问题讨论】:
标签: wicket