小程序按鈕避免多次調(diào)用接口和點擊方案實現(xiàn)(不用showLoading)
本來是用showLoading的,點擊直接轉(zhuǎn)菊花,但是呢,showLoading和 showToast這個方法是沖突的,你轉(zhuǎn)了菊花不能彈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()
開始調(diào)接口
},
})
html代碼
<view bindtap="{{!buttonClicked?'click':''}}" data-id="{{id}}" />
<button bindtap="{{!buttonClicked?'click':''}}" data-id="{{id}}" />
<button bindtap="click" disabled="buttonClicked" data-id="{{id}}" />
到此這篇關(guān)于小程序按鈕避免多次調(diào)用接口和點擊方案實現(xiàn)(不用showLoading)的文章就介紹到這了,更多相關(guān)小程序按鈕避免多次點擊內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
javascript htmlencode函數(shù)(ff兼容版) 主要是編輯器中反轉(zhuǎn)html代碼
非常不錯的htmlencode 方法,比用正則實現(xiàn)的更好,而且效率高,推薦使用第一種方法。2009-06-06
JS控件autocomplete 0.11演示及下載 1月5日已更新
JS控件autocomplete 0.11演示及下載 1月5日已更新...2007-01-01
javascript中SetInterval與setTimeout的定時器用法
Javascript的setTimeOut和setInterval函數(shù)應(yīng)用非常廣泛,它們都用來處理延時和定時任務(wù),比如打開網(wǎng)頁一段時間后彈出一個登錄框,頁面每隔一段時間發(fā)送異步請求獲取最新數(shù)據(jù)等,本文文章通過代碼示例給大家介紹javascript中SetInterval與setTimeout的定時器用法2015-08-08

