页面返回的时候,返回的页面JS不执行,不更新数据,和平常的H5不一样啊。这让我很纠结。



  • 版本1.3.0
    页面返回的时候,返回的页面JS不执行,不更新数据,和平常的H5不一样啊。这让我很纠结。
    我发现之前的页面全部用display:none的形式留在了页面上,浏览器导航返回的时候只是display:block。因为H5本身有导航,所以和开发应用程序不一样,一般自己不加返回按钮,直接用浏览器导航。可是这让我怎么控制返回?每次返回的页面数据不更新。返回看到的页面都很尴尬。。。天哪,巨型的坑!!!



  • 这块本身有监听处理,你可以在 componentDidShow 这个生命周期打印是否有数据,来判断返回到底有没有触发更新



  • 好吧 这是个解决办法 这样的话不能用函数式组件了



  • useEffect 里面。打印不出数据是么。 如果是的话, 那可能不太能用函数式组件。 这块你可以上 github 提一下 issue



  • 是的,我一直都是用函数组件搭建的页面,走流程的时候发现这种尴尬。不过可以改成类组件,解决部分页面,不至于完全没有办法解决。十分感谢。。。



  • 哈哈 用类组件的render函数包裹函数组件里的东西,然后可以通过this拿到所有的hooks。这样函数组件改类组件也很方便。


登录后回复