JSF中“后退”导航链接的最佳实践
制作“后退”链接的最佳方法是什么,以便导航后应用程序保持一致。
-
onclick="history.go(-1)"
。 这是非常有害的吗? - 使用支持bean中的堆栈弹出最后一个视图的导航大小写。 您可以通过使用
设置导航大小写来完成此操作。
- 这些都不是……其他解决方案。
任何帮助,将不胜感激! 分享你的意见! 丹尼尔
我正在使用:
- MyFaces乐团提供对话范围
- 每个导航规则的
这确保在按下“后退”按钮或history.go(-1)
:
- 上一个屏幕中可用的数据仍然存在(因为对话仍处于活动状态)
- “重新提交”浏览器对话框将无法打开。
PS “反向链接”具有不同的含义
如果要通过编程的导航链接解决此问题,可以将LinkedList
用作堆栈。 这样,您可以为存储的导航案例数设置边界。
例:
public class BackNavigationBean { public BackNavigationBean() { history = new LinkedList(); } private LinkedList history; public LinkedList getHistory() { return history; } public void setLastPage(String navigationCase) { history.push(navigationCase); if (history.size() > 10) { history.pollLast(); } } public String getLastPage() { return history.pop(); } }
所以在“前进”链接中:
并且“后退”链接将是: