小程序
小游戏
企业微信
微信支付
扫描小程序码分享
当使用wx.showLoading阻拦用户多次点击时,在真机上测试showLoading并不是立即出现,会造成点击事件多次执行。
4 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
小程序和web开发不一样,web开发是可以通过loading的方式去阻止用户高频点击,因为web开发 渲染层执行的时候js是阻塞的。而小程序是双线程,webview渲染是需要时间的,loading还未渲染出来的时候,js逻辑层依然可以运行,所以想通过loading这种视觉层去阻挡用户高频点击是无效的。
方案其实很多种,那就是不通过webview层去阻挡用户的点击,通过js控制,通过变量加锁解锁或者是防抖都行。
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
我giao,放在request请求的时候 给 uni.showLoading,跟 点击事件多次执行是两回事啊, 你以为来个showLoading就能阻止 多次点击了?想法错误
我说了我是封装请求用的,点击会发起请求,如果loading不是立即会有问题。
为啥用showLoading啊,直接做防抖或变量控制啊
代码贴出来,一起学习下呗
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
小程序和web开发不一样,web开发是可以通过loading的方式去阻止用户高频点击,因为web开发 渲染层执行的时候js是阻塞的。而小程序是双线程,webview渲染是需要时间的,loading还未渲染出来的时候,js逻辑层依然可以运行,所以想通过loading这种视觉层去阻挡用户高频点击是无效的。
方案其实很多种,那就是不通过webview层去阻挡用户的点击,通过js控制,通过变量加锁解锁或者是防抖都行。
我giao,放在request请求的时候 给 uni.showLoading,跟 点击事件多次执行是两回事啊, 你以为来个showLoading就能阻止 多次点击了?想法错误
我说了我是封装请求用的,点击会发起请求,如果loading不是立即会有问题。
为啥用showLoading啊,直接做防抖或变量控制啊
title: 加载中,
mask: true
});
我只是举个例子,我用做封装请求加载使用的。
代码贴出来,一起学习下呗