我有自动刷新wicket页面的场景,但它是基页,所有页面都在扩展它。我不想刷新所有扩展页面只有基页。
现在我正在使用html元标记。它正在刷新所有页面。是否可以只刷新基页
答案 0 :(得分:5)
当你有
时public class BasePage extends Page
然后是另一个
public class SubPage extends BasePage
你实际上并没有将它们作为单独的部分。这种类(和标记)扩展的方法只存在使得进程更像“对象”和“java”之类。最后,整个页面层次结构被组合到一个呈现的页面中。
现在,如果您想要刷新页面的一个子部分,我建议您创建一个Panel
并向该组件添加AjaxSelfUpdatingTimerBehavior
。这将允许您自动刷新页面的任何部分(或多个部分),而无需重新渲染整个内容。
答案 1 :(得分:0)
首先,我同意@jbrookovers的建议。
但是,如果您确实希望刷新孔页,为什么不创建新的类RefreshingBasePage
?然后将您的<meta refresh....>
移动到新的.html文件。只需通过<wicket:head></wicket:head>
元素将刷新插入头部。
然后你可以让你的其他页面免费继承BasePage
,而不会让你的刷新受阻。