你瞅啥呢

2023-07-25 uview1.0的u-number-box组件在渲染时会触发change,如何才能避免事件影响?==》设置判断条件并增加时间延迟

前言:购物车用到加减购物车数量的一个步进器组件,使用的是uview组件1.0版本的u-number-box。

该组件设置了一个@change事件,该事件会在页面渲染的时候触发一次,如果你在里面调用了接口,比如增加/减少购物车数量,那么每次一刷新购物车该事件就会被触发,从而导致不必要的报错。

解决方案:

在data定义一个变量用于判断是否执行调接口的逻辑:

isDo: true,

然后在@change对应事件中调用接口之前判断isDo为true就阻止,即:

if (this.isDo) return;

最后在mounted里面设置500毫秒延迟,500毫秒后设置isDo为false,那么在渲染的时候就不会触发@change里面的接口了,而且500毫秒后该接口就变成了允许触发。

  mounted() {
    setTimeout(() => {
      this.isDo = false;
    }, 500);
  },

 

posted @   叶乘风  阅读(519)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
历史上的今天:
2022-07-25 2022-07-25 使用TortoiseGit工具去git clone时,输错了账号密码,导致后续再次拉取时报账号密码错误
点击右上角即可分享
微信分享提示