前提
记一次多页面开发。
开发需求时会对页面刷新(reload),返回到上一页(用户返回 / history.go())
页面间的通信
sessionStorage保存本次会话的信息,同步到新页面或上一页。
实际情况
打开新页面,sessionStorage同步信息,没问题。
执行history.go()返回上一页,sessionStorage同步信息,也没问题。
用户手动点击返回按钮,之前设置的sessionStorage会被清除(仅限制于同一个页面, a.html?b=1 与 a.html?b=2 之间的跳转)
解决返回问题
借助localStorage保存信息。
先判断是否存在用sessionStorage保存的信息,如果未取到,取localStorage里的信息,取出后,并立即清除key。避免新的会话误用localStorage
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步