gpt4 book ai didi

javascript - 如何管理应用程序和 URL 中的状态?

转载 作者:行者123 更新时间:2023-11-29 15:48:24 27 4
gpt4 key购买 nike

我正在构建一个通过 URL 在内部管理状态的 Web 应用程序,以允许用户使用浏览器按钮以及网站的 UI 来操作状态。

我正在使用 jQuery-BBQ管理 URL 散列,我在 hashchange 上有一个处理程序,它会在 URL 更改时相应地更改内容(例如,按下浏览器后退/前进按钮)。然而,事情本身发生了相应的变化,我最终改变了散列,从而触发散列更改处理程序并导致循环。

为了避开这些场景,我发现自己会检查新状态是否与之前的状态相同,如果是则放弃。但我很快就得到了非常精简的代码,分别处理每个状态,多个参与者在每个状态上运行。

是否有一种设计模式可以优雅地处理这种状态管理场景?

最佳答案

我现在不能建议您立即实现任何特定的设计模式,但我可以建议您看一下 html5 的 pushSate() 和 popState() 函数。这些函数能够存储状态以及与这些状态相关的数据。 github.com 正在使用这种技术遍历某个公共(public)存储库的目录。这是一个快速指南:https://developer.mozilla.org/en/DOM/Manipulating_the_browser_history .希望这会有所帮助。

关于javascript - 如何管理应用程序和 URL 中的状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8556664/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com