本文介绍了SPA中的最佳实践:哈希与问号URL的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个单页应用程序。我刚刚意识到,如果我用查询方法替换我的Location.hash方法来更改状态,我就可以简化应用程序。并免费获取历史记录(后退按钮)。(而不是监听onhashchange事件)
因此我的URL将从
http://.../spa.html#state={...}
http://.../spa.html?state={...}
缺点是从"#"改为"?"意味着页面被重新加载(这很好,因为状态是可检索的),但是,虽然我可以看到它,但可能需要更长的时间和/或闪烁。
这方面有什么最好的推荐吗?
推荐答案
这就是SPA(或至少是其主要部分)的意义所在--通过不必重新加载页面来改善用户体验。无论如何,您都不会进行传统的预呈现文档交换,这意味着不支持JavaScript的代理已经不在考虑范围之内了。因此,在您的解决方案中,您是在牺牲主要的用户体验优势来换取代码中的微小简化。
这篇关于SPA中的最佳实践:哈希与问号URL的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!