小程序按钮避免多次调用接口和点击方案实现(不用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 相关文章推荐
JavaScript实际应用:innerHTMl和确认提示的使用
Jun 22 Javascript
js的alert样式如何更改如背景颜色
Jan 22 Javascript
js制作简易年历完整实例
Jan 28 Javascript
jQuery实现带动画效果的二级下拉导航方法
Mar 11 Javascript
js实现上一页下一页的效果【附代码】
Mar 10 Javascript
使用vue.js编写蓝色拼图小游戏
Mar 17 Javascript
如何解决vue与传统jquery插件冲突
Mar 20 Javascript
Angular2使用Angular-CLI快速搭建工程(二)
May 21 Javascript
Angular Renderer (渲染器)的具体使用
May 03 Javascript
vue2.0+vuex+localStorage代办事项应用实现详解
May 31 Javascript
微信小程序实现简单评论功能
Nov 28 Javascript
element-ui多文件上传的实现示例
Apr 10 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中使用ExcelFileParser处理excel获得数据(可作批量导入到数据库使用)
2010/08/21 PHP
ThinkPHP基本的增删查改操作实例教程
2014/08/22 PHP
srcElement表格样式
2006/09/03 Javascript
js对象的构造和继承实现代码
2010/12/05 Javascript
js定时器怎么写?就是在特定时间执行某段程序
2013/10/11 Javascript
为开发者准备的10款最好的jQuery日历插件
2014/02/04 Javascript
JS高级调试技巧:捕获和分析 JavaScript Error详解
2014/03/16 Javascript
使用AngularJS处理单选框和复选框的简单方法
2015/06/19 Javascript
Vue2 Vue-cli中使用Typescript的配置详解
2017/07/24 Javascript
Angular4学习笔记之准备和环境搭建项目
2017/08/01 Javascript
jQuery中将json数据显示到页面表格的方法
2018/05/27 jQuery
vue项目部署上线遇到的问题及解决方法
2018/06/10 Javascript
微信小程序实现默认第一个选中变色效果
2018/07/17 Javascript
vue项目实现表单登录页保存账号和密码到cookie功能
2018/08/31 Javascript
Vue+Element实现动态生成新表单并添加验证功能
2019/05/23 Javascript
通过vue手动封装on、emit、off的代码详解
2019/05/29 Javascript
微信小程序点击保存图片到本机功能
2019/12/13 Javascript
详解微信小程序工程化探索之webpack实战
2020/04/20 Javascript
跟老齐学Python之大话题小函数(1)
2014/10/10 Python
Python新手在作用域方面经常容易碰到的问题
2015/04/03 Python
深入理解Django中内置的用户认证
2017/10/06 Python
Python创建二维数组实例(关于list的一个小坑)
2017/11/07 Python
详解python多线程、锁、event事件机制的简单使用
2018/04/27 Python
Python封装成可带参数的EXE安装包实例
2019/08/24 Python
详解pandas绘制矩阵散点图(scatter_matrix)的方法
2020/04/23 Python
python uuid生成唯一id或str的最简单案例
2021/01/13 Python
使用OpenCV实现人脸图像卡通化的示例代码
2021/01/15 Python
CSS3弹性伸缩布局之box布局
2016/07/12 HTML / CSS
捷科时代的软件测试笔试题
2015/11/09 面试题
关于读书的演讲稿
2014/05/07 职场文书
博士生专家推荐信
2014/09/26 职场文书
街道社区活动报告
2015/02/05 职场文书
生产实习心得体会范文
2016/01/22 职场文书
用Python写一个简易版弹球游戏
2021/04/13 Python
Python3接口性能测试实例代码
2021/06/20 Python
Python编程编写完善的命令行工具
2021/09/15 Python