gpt4 book ai didi

javascript - React 组件上的 pageshow 事件监听器无法正常工作

转载 作者:行者123 更新时间:2023-12-03 05:59:36 24 4
gpt4 key购买 nike

我遇到以下情况,在第一次进入页面或从另一个页面返回该页面时,我需要运行一些“代码”。

Safari 的缓存功能 ( https://webkit.org/blog/516/webkit-page-cache-ii-the-unload-event/ ) 导致了这种情况,因为它缓存我的页面而不执行任何操作

我按照他们的建议向“pageshow”事件添加事件监听器,这样我可以检查该事件是否持续存在,然后运行我需要的内容。

这个example基本上就是我想要的:

  • 首页访问...附加监听器 = 酷,我有。
  • 如果我导航出页面并返回(使用 Safari),它会在 pageshow = 酷,我有那个...上触发我的监听器。
  • 每次我导航回该页面时都应该触发监听器 = 不酷,我的监听器触发一次。

我正在使用react,componentDidMount()是我准备一切的地方:

enter image description here

它第一次工作。我能够导航出我的页面并返回到它+执行我需要的东西。

问题是:第二次重复“导航出我的页面并返回”不会执行任何操作..看起来监听器被删除或发生其他情况。

最佳答案

经过两天尝试找到方法...我的同事让我尝试a listener on 'popstate' 。我太着迷于让“pageshow”监听器工作了,以至于我完全忘记了测试那个监听器;它完美地工作了:

window.addEventListener('popstate', function(event) {

关于javascript - React 组件上的 pageshow 事件监听器无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39800781/

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