小程序-防抖解决弹窗多次出现问题

原生的小程序的wx.showModel组件没有直接关闭的方法,原生组件比较坑就是了,所以只能用其他方法,目前的需求就是一个页面会显示多个弹窗确认,但我只需要显示一个即可,确认关闭后,只要不刷新就不会再触发

防抖

作用:在一段时间内只执行一次函数

问题:由于原生小程序安装插件比较麻烦,所以就手写一个吧

封装防抖函数

复制代码
let timer
let flag
function debounce(func, wait = 500 , immediate = false) {
    if (immediate) {
        if(!flag) {
            flag = true
            typeof func === 'function' && func()
            timer = setTimeout(() => {
                flag = false
            }, wait)
        }
    } else if (!flag) {
        flag = true
        timer = setTimeout(() => {
           flag = false
           typeof func === 'function' && func()
        }, wait)
    }
}

使用

在需要多次弹窗的判断逻辑下使用

debounce(() => {

wx.showModal({

title: '提示',

content: '测试

showCancel: false,

success(res) {

if (res.confirm) {

console.log('确定');

}

}

})

}, 800, false)

这样效果就实现了!

###题外:原生的小程序真的很坑,而且安卓和Ios显示有时候会不一样,兼容性问题吧,经常搞得我比较懵,能用uniapp开发就uniapp吧!!!

相关推荐
code_li8 小时前
小程序上线需要的资质证书汇总
小程序·上线·发布·资质
hnxaoli16 小时前
统信小程序(十三)循环键鼠操作程序
python·小程序
i查拉图斯特拉如是17 小时前
使用workbuddy 30分钟搭建微信小程序
微信小程序·小程序
2501_9160088919 小时前
Mac 上生成 AppStoreInfo.plist 文件,App Store 上架
android·macos·ios·小程序·uni-app·iphone·webview
咖啡の猫21 小时前
小程序协同工作和发布
小程序
维双云21 小时前
小程序怎么制作工具?与其盲目找开发,不如先分清自己要哪一种
小程序
qq_9109462921 天前
校园共享电动车租赁小程序
小程序
侃谈科技圈1 天前
5G网络仿真软件哪个更高效?Ranplan两款核心产品深度解析
小程序
小羊Yveesss1 天前
微信小程序年度费用全拆解:SaaS、开源与定制开发的3年成本实测对比
微信小程序·小程序·开源
2501_916007472 天前
iOS开发中抓取HTTPS请求的完整解决方法与步骤详解
android·网络协议·ios·小程序·https·uni-app·iphone