点击事件重复触发
发布于 6 年前 作者 xcui 1407 次浏览 来自 问答

任何按钮加了tap事件在事件内用wx.navigateTo跳转到另一个界面,手指快速连续点击按钮时就会发生多次跳转到同一个界面的效果,返回也要返回多次才能回到原来的界面

试过很多其他的小程序也有相同的BUG,但小程序实例却没有

8 回复

你好,这是一个已知问题,我们会在后续版本中进行改善

这个加入节流操作就行了,简单的就是设置一个变量(不要在data里创建,因为setData是异步的,建议在page里重建个对象,里面专门放置不参与页面渲染单在逻辑里使用的变量,这样设置是同步的),在点击时判断这个变量(假如默认是false),如果满足则更改这个变量状态(更改为true),然后处理自己的逻辑,不管是跳转页面还是请求(这里注意在complete里将这个变量的状态更改回去,改为false),然后在onShow里进行判断,如果这个变量状态为触发状态(为true),则更改状态为false,这样就可以防止用户快速点击而连续触发事件,并且不会导致事件阻塞

已解决,加了一秒的延迟。

官方没有解决,不过网上有其他的方式解决,可自行百度

百度一下就有了

怎么解决的呢?

回到顶部