gpt4 book ai didi

javascript - 使用dojo/hash时如何处理浏览器刷新?

转载 作者:行者123 更新时间:2023-12-03 06:48:17 24 4
gpt4 key购买 nike

在单页面应用程序上,我的问题是我订阅 hashchange 事件来呈现内容(创建和销毁代表我的页面的小部件),但该函数仅在哈希实际更改时才会触发,例如当单击浏览器后退和前进按钮。

我的主 javascript 文件总是在第一次和刷新时加载,包含以下内容

topic.subscribe("/dojo/hashchange", function(newhash){
//set content based on hash
});

当单击刷新时,它不会被触发,并且我留下一个空白页面(渲染页面的所有逻辑都位于我订阅的该主题的匿名函数内)

最佳答案

刷新时不会调用您的订阅,因为哈希值实际上并未更改。您正在订阅哈希更改,即页面加载后发生的更改。

使用这种订阅方法,事情可能会很快失控。您可能想看看使用路线。一些链接-

https://developer.mozilla.org/en-US/docs/Web/Events/hashchange

https://dojotoolkit.org/documentation/tutorials/1.9/hash/

https://dojotoolkit.org/reference-guide/1.10/dojo/router.html

https://www.sitepen.com/blog/2014/06/18/dojo-faq-does-dojo-have-routing-like-backbone-and-embe/

关于javascript - 使用dojo/hash时如何处理浏览器刷新?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37621730/

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