适配mpvue平台的的微信小程序日历组件mpvue-calendar

简介:

mpvue-calendar

基于vue-calendar的适配mpvue平台的的微信小程序日历组件

预览

129d493c23ebaaae143c3a0d19e716fa19e8d2d8

安装


npm i mpvue-calendar

使用

  • import Calendar from 'mpvue-calendar' 引入组件
  • components中注册组件Calendar
  • template中使用组件<Calendar />

参数及方法

参数or方法 类型 说明
months Array 自定义月份,不传默认为中文一到十二月
weeks Array 自定义星期,不传默认为中文日到六
value Array 默认选中日期
begin Array 限制开始日期,不传则不限制
end Array 限制结束日期,不传则不限制
disabled Array 禁用日期
events Object 自定义备注
lunar Boolean 是否显示农历,默认为false
clean Boolean 是否为简洁模式,简洁模式下自定义备注会显示为圆点,默认为false
range Boolean 是否为范围模式,默认为false
multi Boolean 是否为多选模式,默认为false
select(val, val2) function 日期选中事件,在range模式下val为开始日期、val2为结束日期,其他val为选中日期
setToday() function 返回今日
selectYear(val) function 选择年份事件,val为选中的年份
prev(val) function 选择上一月事件,val为月份
next(val) function 选择下一月事件,val为月份
arrowLeft String 自定义左箭头图片,填写图片路径,不填则使用默认图片
arrowRight String 自定义右箭头图片,填写图片路径,不填则使用默认图片
  • value 参数 在普通模式下value为一维数组如2018年6月21为[2018,6,21] 在range和multi模式下value为二维数组,如range模式选中2018年6月21到6月28为[[2018,6,21], [2018,6,28]]
  • events 参数 events为自定义备注,例如备注2018年6月21日为{'2018-6-21': '今日备注', '2018-6-22':'明日备注'},在clean模式下备注为圆点,lunar农历模式下不显示备注
  • disabled 参数 disabled为禁用日期,如禁用2018-6-21日为['2018-6-21']

示例


<template>
  <div>
    <Calendar
      :months="months"
      :value="value"
      @next="next"
      @prev="prev"
      :events="events"
      lunar
      clean
      @select="select"
      ref="calendar"
      @selectMonth="selectMonth"
      @selectYear="selectYear"
      :arrowLeft="arrowLeft"
    />
    <button @click="setToday">返回今日</button>
  </div>
</template>

<script>
import Calendar from 'mpvue-calendar'
import arrowLeft from '../assets/arrowLeft.png'

export default {
  data () {
    return {
      months: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],
      disabledarr: ['2018-6-27','2018-6-25'],
      value: [2018,6,7],
      begin:[2016,1,1],
      end:[2020,1,1],
      events: {'2018-6-7':'今日备注', '2018-6-8':'一条很长的明日备注'},
	  arrowLeft: arrowLeft
    }
  },
  components: {
    Calendar
  },
  methods: {
    selectMonth(month,year){
      console.log(year,month)
    },
    prev(month){
      console.log(month)
    },
    next(month){
      console.log(month)
    },
    selectYear(year){
      console.log(year)
    },
    setToday(val,val1,val2) {
      this.$refs.calendar.setToday();
    },
    select(val, val2) {
      console.log(val)
      console.log(val2)
    }
  }
}
</script>



原文发布时间为:2018年06月25日
原文作者: 飞翔荷兰人

本文来源: 掘金 如需转载请联系原作者




相关文章
|
26天前
|
小程序 数据可视化 JavaScript
微信小程序:轻松实现时间轴组件
本文介绍了如何在微信小程序中实现一个可视化时间轴组件。该组件适用于展示用户资金流动、投资结算等时间节点,帮助用户直观了解资金去向。时间轴支持自定义节点形状、显示序号、倒序排列等功能,并通过插槽灵活定义动态内容。文中详细介绍了组件的设计与使用方法,以及如何结合动态 slot 实现自定义操作。该组件为展示用户资金信息提供了美观、易用的解决方案。
54 1
微信小程序:轻松实现时间轴组件
|
25天前
|
小程序
微信小程序动态tabBar实现:基于自定义组件,灵活支持不同用户角色与超过5个tab自由组合(更新版)
微信小程序动态tabBar实现:基于自定义组件,灵活支持不同用户角色与超过5个tab自由组合(更新版)
332 1
|
26天前
|
小程序 搜索推荐 API
微信小程序:自定义关注公众号组件样式
尽管关注公众号组件的样式固定且不可修改,但产品经理的需求却需要个性化的定制。在这种情况下,我们需要寻找解决方案,以满足这些特殊需求,尽管这可能有点棘手。
54 0
微信小程序:自定义关注公众号组件样式
|
29天前
|
小程序 前端开发 JavaScript
微信小程序图表制作利器:ECharts组件的使用与技巧
微信小程序图表制作利器:ECharts组件的使用与技巧
48 1
|
29天前
|
缓存 小程序 索引
uni-app开发微信小程序时vant组件van-tabs的使用陷阱及解决方案
uni-app开发微信小程序时vant组件van-tabs的使用陷阱及解决方案
161 1
|
1月前
|
小程序 JavaScript
微信小程序之input组件及其获取用户输入信息
微信小程序之input组件及其获取用户输入信息
47 1
|
1月前
|
小程序 前端开发 JavaScript
小程序入门之认识view和text组件
小程序入门之认识view和text组件
44 0
|
25天前
|
移动开发 小程序 数据可视化
基于npm CLI脚手架的uniapp项目创建、运行与打包全攻略(微信小程序、H5、APP全覆盖)
基于npm CLI脚手架的uniapp项目创建、运行与打包全攻略(微信小程序、H5、APP全覆盖)
166 3
|
1月前
|
小程序 API
微信小程序更新提醒uniapp
在小程序开发中,版本更新至关重要。本方案利用 `uni-app` 的 `uni.getUpdateManager()` API 在启动时检测版本更新,提示用户并提供立即更新选项,自动下载更新内容,并在更新完成后重启小程序以应用新版本。适用于微信小程序,确保用户始终使用最新版本。以下是实现步骤: ### 实现步骤 1. **创建更新方法**:在 `App.vue` 中创建 `updateApp` 方法用于检查小程序是否有新版本。 2. **测试**:添加编译模式并选择成功状态进行模拟测试。
43 0
微信小程序更新提醒uniapp
|
3月前
|
小程序 前端开发 Java
SpringBoot+uniapp+uview打造H5+小程序+APP入门学习的聊天小项目
JavaDog Chat v1.0.0 是一款基于 SpringBoot、MybatisPlus 和 uniapp 的简易聊天软件,兼容 H5、小程序和 APP,提供丰富的注释和简洁代码,适合初学者。主要功能包括登录注册、消息发送、好友管理及群组交流。
103 0
SpringBoot+uniapp+uview打造H5+小程序+APP入门学习的聊天小项目
下一篇
无影云桌面