我有一个单页应用。并且意识到如果我用查询方法替换我的location.hash方法来改变状态,我会简化应用程序。并免费获取历史(后退按钮)。 (而不是听onhashchange事件)
所以我的网址会从
移开http://.../spa.html#state={...}
http://.../spa.html?state={...}
缺点是从'#'转到'?'意味着页面被重新加载(这很好,因为状态是可检索的)但是,虽然我可以看到它,但它可能需要更长时间和/或闪烁。
对此有什么最佳建议吗?
答案 0 :(得分:2)
这是SPA(或至少是其中的一个主要部分)的重点 - 通过不必重新加载页面来改善用户体验。你无论如何都没有进行传统的预呈现文档交换,这意味着非启用JavaScript的代理已经不在了。因此,使用您的解决方案,您可以在代码中进行少量简化,从而获得主要的用户体验。