小程序按钮避免多次调用接口和点击方案实现(不用showLoading)


Posted in Javascript onApril 15, 2020

本来是用showLoading的,点击直接转菊花,但是呢,showLoading和 showToast这个方法是冲突的,你转了菊花不能弹toast提示,在某个页面需要提交一次表单和做输入验证,测试说可以点击多次

然后想到可以用一个变量判断是否点击了,然后500毫秒后自动回来

写在公共的utils方法里面

// 防止多次点击
function btnClickedFun(self) {
  self.setData({
    btnClicked: true
  })
  setTimeout(() => {
    self.setData({
      btnClicked: false
    })
  })
}

js 代码

Page({
 data: {
  btnClicked: false
 },
 click: function (e) {
  utils.btnClickedFun(this);
  // 各种处理代码
  
  if (!form[json.departmentId]) {
    utils.showToast('请选择所属部门')
    return
  }
  ...
  // 各种处理代码
  
  utils.showLoading()
  
  开始调接口
  

 },
})

html代码

<view bindtap="{{!buttonClicked?'click':''}}" data-id="{{id}}" />
<button bindtap="{{!buttonClicked?'click':''}}" data-id="{{id}}" />
<button bindtap="click" disabled="buttonClicked" data-id="{{id}}" />

到此这篇关于小程序按钮避免多次调用接口和点击方案实现(不用showLoading)的文章就介绍到这了,更多相关小程序按钮避免多次点击内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
仿中关村在线首页弹出式广告插件(jQuery版)
May 03 Javascript
extjs ColumnChart设置不同的颜色实现代码
May 17 Javascript
js与css实现弹出层覆盖整个页面的方法
Dec 13 Javascript
2014年50个程序员最适用的免费JQuery插件
Dec 15 Javascript
基于jquery实现鼠标左右拖动滑块滑动附源码下载
Dec 23 Javascript
浅谈JS运算符&amp;&amp;和|| 及其优先级
Aug 10 Javascript
AngularJS动态绑定HTML的方法分析
Nov 07 Javascript
Javascript中的prototype与继承
Feb 06 Javascript
JS如何设置元素样式的方法示例
Aug 28 Javascript
Vue实现双向绑定的原理以及响应式数据的方法
Jul 02 Javascript
浅谈Javascript中的对象和继承
Apr 19 Javascript
Vue 实现复制功能,不需要任何结构内容直接复制方式
Nov 09 Javascript
javascript设计模式 ? 享元模式原理与用法实例分析
Apr 15 #Javascript
javascript设计模式 ? 外观模式原理与用法实例分析
Apr 15 #Javascript
写给新手同学的vuex快速上手指北小结
Apr 14 #Javascript
vue-cli设置publicPath小记
Apr 14 #Javascript
vue 实现用户登录方式的切换功能
Apr 14 #Javascript
react 不用插件实现数字滚动的效果示例
Apr 14 #Javascript
详解在Vue.js编写更好的v-for循环的6种技巧
Apr 14 #Javascript
You might like
PHP树的代码,可以嵌套任意层
2006/10/09 PHP
php生成复杂验证码(倾斜,正弦干扰线,黏贴,旋转)
2018/03/12 PHP
获取元素距离浏览器周边的位置的方法getBoundingClientRect
2013/04/17 Javascript
IE下写xml文件的两种方式(fso/saveAs)
2013/08/05 Javascript
jQuery性能优化的38个建议
2014/03/04 Javascript
JS逆序遍历实现代码
2014/12/02 Javascript
SeaJS 与 RequireJS 的差异对比
2014/12/08 Javascript
JavaScript改变CSS样式的方法汇总
2015/05/07 Javascript
jQuery网页选项卡插件rTabs用法实例分析
2015/08/26 Javascript
详解JavaScript数组和字符串中去除重复值的方法
2016/03/07 Javascript
AngularJS删除路由中的#符号的方法
2016/09/20 Javascript
js中获取 table节点各tr及td的内容简单实例
2016/10/14 Javascript
javascript replace()第二个参数为函数时的参数用法
2016/12/26 Javascript
详解使用vue脚手架工具搭建vue-webpack项目
2017/05/10 Javascript
JavaScript实现简单评论功能
2017/08/17 Javascript
js canvas实现简单的图像扩散效果
2020/06/28 Javascript
JS实现中英文混合文字溢出友好截取功能
2018/08/06 Javascript
vue与bootstrap实现简单用户信息添加删除功能
2019/02/15 Javascript
小程序input数据双向绑定实现方法
2019/10/17 Javascript
Google开源的Python格式化工具YAPF的安装和使用教程
2016/05/31 Python
python安装PIL模块时Unable to find vcvarsall.bat错误的解决方法
2016/09/19 Python
Python实现针对中文排序的方法
2017/05/09 Python
20行python代码的入门级小游戏的详解
2019/05/05 Python
python实现得到当前登录用户信息的方法
2019/06/21 Python
Python实现的企业粉丝抽奖功能示例
2019/07/26 Python
解决os.path.isdir() 判断文件夹却返回false的问题
2019/11/29 Python
最新版 Windows10上安装Python 3.8.5的步骤详解
2020/11/28 Python
Amcal中文官网:澳洲综合性连锁药房
2019/03/28 全球购物
澳大利亚领先的亚麻品牌:Bed Threads
2019/12/16 全球购物
教师推荐信范文
2013/11/24 职场文书
商务英语广告词大全
2014/03/18 职场文书
房地产活动策划方案
2014/05/14 职场文书
就业协议书样本
2014/08/20 职场文书
2016道德模范先进事迹材料
2016/02/26 职场文书
Js类的构建与继承案例详解
2021/09/15 Javascript
vue3语法糖内的defineProps及defineEmits
2022/04/14 Vue.js