微信小程序 vant 日历组件动态定义日历格式

应项目要求要做打卡小程序

日历日期下方下面要动态显示打卡未打卡

在构建好npm包的情况下

首先在app.json中引入它

"usingComponents": {
      "van-calendar": "@vant/weapp/calendar/index",
},
 <van-calendar
        color="#4988FD"
        show="{{show}}"
        type="single"
        row-height='50'
        formatter="{{formatter}}"
        min-date="{{ minDate }}"
        max-date="{{ maxDate }}"
        poppable="{{false}}"
        show-title="{{false}}"
        show-mark="{{false}}"
        show-confirm="{{false}}"
        bind:confirm="submit"/>

其次在html中写入以上代码

然后再js文件中的data中定义formatter

Page({
  data:{
    minDate: new Date(2022, 7, 1).getTime(),
    maxDate: new Date(2022, 7, 31).getTime(),
    formatter(day){
      const date=day.date.getDate()
      day.text=date
      return day
    },
  },
})

最后在获取打卡数据时用setData方法给它赋值

getMonthListDetail(){
    var month=this.FormatAll(this.data.minDate).split(' ')
    var that=this
    wx.request({
      url: '',
      method:'POST',
      success(res){
        that.setData({
          dkjlList:res.data.PAGE.list,
          formatter:function(e){
            const date=e.date.getDate()
            e.text=date
            console.log(e+'=========');
            var aa=that.FormatAll(e.date).split(' ')
            that.data.dkjlList.forEach(item=>{
              if(aa[0]===item.stDay){
                e.bottomInfo=item.isSign===1?'已打卡':'未打卡'
              }
            })
            return e
          }
        })
      }
    })
  },

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值