Wicket:存储UI设置的最佳实践?

时间:2015-03-27 08:09:15

标签: client local-storage settings wicket

我正在开发一个富Internet应用程序,它是使用Wicket和许多花哨的Wicket-JS集成构建的。

我现在想要存储一些用户设置;例如,我有一个TabbedPanel。如果用户返回包含TabbedPanel的页面,我希望能够将用户返回到他最近使用的选项卡。

存储这些用户设置的Wicket方法是什么?我不想将它们存储在服务器上,而是存储在客户端上。

2 个答案:

答案 0 :(得分:2)

Wicket中没有任何内容可以自动为您制作此内容。

一种方法是将设置放在Cookie中(CookieUtils会在这里帮助你)。 另一种方法是将设置存储在浏览器的存储中(localStorage或sessionStorage)。

使用cookie的好处是服务器端的设置可以在没有任何额外请求的情况下使用,因此您可以在第一页渲染时使用预先选择的选项卡渲染TabbedPanel。

如果你决定使用存储,那么你必须编写一些JavaScript,它将从第一个选项卡切换到页面加载/ domready上的已保存选项卡。但是用户体验并不是最好的,因为用户会看到标签内容的变化情况。

答案 1 :(得分:1)

我认为您需要使用Cookie,或者,您可以将用户设置存储到会话中。但在后一种情况下,当会话过期或用户注销时,用户设置将丢失。 组件ModalWindow使用cookie来存储类似的数据,例如窗口尺寸或记住窗口位置。