zoukankan      html  css  js  c++  java
  • Vue自定义日历组件

    今天给大家介绍Vue的日历组件,可自定义样式、日历类型及支持扩展,可自定义事件回调、Props数据传输。

    线上demo效果

    示例

    Template:

        <Calendar 
          :sundayStart="true"
          :calendarType="1"
          :markDate="markDate"
          :markDateClass="markDateClass"
          :agoDayPrevent="agoDayPrevent"
          :futureDayPrevent="futureDayPrevent"
          @choseDay="choseDay"
          @changeMonth="changeMonth">
        </Calendar>

    script:

      data() {
          return{
            calendarClass: 'cal_common',
          chooseDate: '',
          showCalendar: 1,
          markDate: ['2019/02/13','2019/02/22'],
          markDateClass: [
            {date:'2019/02/20',className:"mark1"}, 
            {date:'2018/02/21',className:"mark2"}
          ],
          agoDayPrevent: '1549728000',
          futureDayPrevent: '2551024000',
          }
      },
      methods: {
        choseDay(date) {
          this.chooseDate = date
        },
        toggleCal(type) {
          this.showCalendar = type
        },
        changeMonth(date) {
          console.log('changeMonth'+date)
        }
      }

    Api

    Props属性

    • markDateArray/[]  需要标记的日期
    • markDateClassArray/[]  定义标记的日期及className
    • sundayStartBoolean/true  是否以星期天开始
    • agoDayPreventString/0  某个日期前不允许点击(10时间戳)
    • futureDayPreventString/2554387200  某个日期后不允许点击
    • calendarClassString/''  日历盒子的class
    • calendarTypeNumber/1  日历类型:1--默认;2--简易

    watch观察

    用来观察父组件Props传值变化,动态更新子组件

    • agoDayPrevent: function(val,oldVal) {/*重绘日历*/}
    • futureDayPrevent: function(val,oldVal){/*重绘日历*/}

    Event回调

    • @choseDay(date)  选择日期执行
    • @changeMonth(date)  切换月份执行

    data数据

    • textTop  日历头部星期排列
    • dateTop  日历顶部显示的当前年月
    • newList  当前月份需要显示的天数集合
  • 相关阅读:
    django复习笔记2:models
    django复习笔记1:环境配置
    jQuery复习笔记
    Javascript备忘复习笔记2
    Javascript备忘复习笔记1
    实战SQL注入
    【Python】SyntaxError: Non-ASCII character 'xe8' in file
    【iOS】Error: Error Domain=PBErrorDomain Code=7 "Cannot connect to pasteboard server
    【Mac】nsurlsessiond 后台下载问题的解决方法
    【iOS】沙盒目录
  • 原文地址:https://www.cnblogs.com/lodadssd/p/10450059.html
Copyright © 2011-2022 走看看