用户协议倒计时,onShow 和 onLoad 的区别

用户协议的倒计时需要页面一出来时就需要它开始计时,在倒计时中按钮属于禁用状态

这样我们就不可以单独定义函数,我们可以直接使用微信开发者工具的生命周期函数--监听页面显示onShow()函数

  data: {
    //协议按钮内容
    agreeContent: '10s 我已阅读并同意' ,
    //按钮禁用状态
    disabled: 'true'
  },  



 //协议按钮倒计时
  onShow: function () {
    let countDown = 10;
    let time = setInterval(()=>{
      --countDown;
      this.setData({
        agreeContent: `${countDown} s 我已阅读并同意`
      })
      if(countDown < 1){
        clearInterval(time);
        this.setData({
          agreeContent: this.data.agreeContent="我已阅读并同意",
          disabled: this.data.disabled==='false'
        })
      }
    },1000)
  }, 

 

wxml 中的代码段

<view>
  <!-- 协议内容  -->
  <view class="agree"></view>

  <!-- 按钮  -->
  <view class="agreeBtn" 
    bind:click="goBackLogin"
  >
    <van-button disabled="{{disabled}}" round type="info">{{agreeContent}}</van-button>
  </view>
</view>

针对 wxml 中代码,作为初学者的我踩了一个坑,那就是对于生命周期函数用法的不理解所导致,我将 onShow 用了绑定事件

  <view class="agreeBtn" 
    bind:click="goBackLogin"

   bindtap="onShow"
  >
    <van-button disabled="{{disabled}}" round type="info">{{agreeContent}}</van-button>
  </view>

 这样做的错误就是它与点击事件串了,使用点击事件时会重新触发 onShow函数

对于 onShow 和 onLoad 的区别请读者点击此链接移驾到这位朋友的博客吧~~

https://www.cnblogs.com/senup/p/12628796.html

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值