点击事件重复触发

发布于 7 年前作者 xcui1533 次浏览最后编辑 7 年前来自 ask

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

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

8 回复
shenming
shenming1 楼6 年前

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

xia89
xia892 楼6 年前

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

yang71
yang713 楼6 年前

已解决

wanxiulan
wanxiulan4 楼6 年前

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

lwen
lwen5 楼6 年前

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

guiying15
guiying156 楼6 年前

百度一下就有了

weidong
weidong7 楼6 年前

怎么解决的呢?

sunming
sunming8 楼5 年前

改了吗?