萌萌新的成长 2023-05-06 10:47 采纳率: 33.3%
浏览 77
已结题

uniapp的微信公众号h5项目,tabbar页面监听物理返回键,在数据请求回来之前返回会刷新页面。

我用uniapp写了一个公众号h5,我有一个tabbar页面(我的),这个页面的show是这样的

async onShow() {
let data = await this.getExpend()
this.$historyUrl()
window.addEventListener('popstate', this.back, false);
}

问题是这样的: 我从我的页面跳转到个人信息页面,然后返回到我的页面,我的页面数据请求回来之前我按物理返回按钮,页面会刷新,我再返回就直接退出了。 刷新之后再返回直接退出的原因是页面刷新了,在公众号h5安卓里面,你要有交互才能触发popstate,我没交互所以直接退出了,但是为什么我在数据请求返回之前按物理返回键会刷新页面?back函数也阻止了默认行为。数据请求回来之后再按物理返回是正常的,目前只在tabbar页面发现这个问题。

  • 写回答

3条回答 默认 最新

  • 萌萌新的成长 2023-05-19 10:42
    关注

    解决了,原因是监听popstate在await后面,数据没请求回来就返回的话是还没有addEventListener,所以监听不了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 5月28日
  • 已采纳回答 5月20日
  • 创建了问题 5月6日

悬赏问题

  • ¥20 python忆阻器数字识别
  • ¥15 无法输出helloworld
  • ¥15 高通uboot 打印ubi init err 22
  • ¥20 PDF元数据中的XMP媒体管理属性
  • ¥15 R语言中lasso回归报错
  • ¥15 网站突然不能访问了,上午还好好的
  • ¥15 有没有dl可以帮弄”我去图书馆”秒选道具和积分
  • ¥15 semrush,SEO,内嵌网站,api
  • ¥15 Stata:为什么reghdfe后的因变量没有被发现识别啊
  • ¥15 振荡电路,ADS仿真