uniapp按钮点击过快导致请求数据混乱
当出现这个问题的时候尝试使用防抖函数可以解决这个问题,但是我的程序用防抖不行,最后查阅了很多资料选择使用笨办法,当请求没有回来时禁止用户点击按钮。
<view class="change-time-list fl" v-for="(item,index) in timeList" :key="index"
:class="{active:item.name==changeName}" >
<span @click="isDisabled&&bookClick(item)">{{item.name}}</span>
</view>
这是页面的html代码,使用点击事件传参加一个参数控制点击是否执行
isDisabled : true,//初始值设置
bookClick(data){
this.flowOverview()
}
//请求参数函数
async flowOverview() {
this.isDisabled = false; //禁用操作按钮
let params = {
...this.overViewParams,
}
let {data}=await this.$api("flowOverview", params)
// 数据没返回前禁止点击事件
if(data){
this.isDisabled = true;
}
}
点击按钮时调用函数请求后端接口,并在返回数据前禁止按钮点击。