Vue.js横向日历组件别人的

安装

npm install vue-hori

引入

说明: 当前组件只支持局部引入

// import in ***.vue
<script>
import VueHorizontalCalendar from 'vue-horizontal-calendar';
export default {
  components: {
      VueHorizontalCalendar
  }
}

 

Props

参数名说明类型默认值是否必填
choosedDate初始化选中的日期;可接收格式如‘2019/12/01’或‘2019-12-01’或 Date对象实例String,Datenew Date()
swipeSpace点击左右箭头,切换的日期间隔天数;最大值不超过当前组件可显示的天数String,Number7
choosedDatePos当前默认选中的日期所处的位置;('left', 'center','right')Stringleft
minDate最小日期限制;可接收格式如‘2019/12/01’或‘2019-12-01’或 Date对象实例String,Date-
maxDate最大日期限制;可接收格式如‘2019/12/01’或‘2019-12-01’或 Date对象实例String,Date-
highlightedDates自定义高亮日期:支持字符串数组,字符串格式为YYYY/MM/DD,如['2021/07/01'];匹配的日期,会有class‘date-highlighted’,可以根据class名,自行定义样式。Array[]
choosedItemColor选中的日期背景色Stringrgb(13, 141, 224)
todayItemColor‘今天’未选中时的背景色Stringrgba(13, 141, 224, .1)
lang语言;'zh'(中文), 'en'(英语), 'es'(西班牙语), 'it'(意大利语), 'fr'(法语), 'de'(德语)Stringzh
sundayText星期天的中文字;仅当lang属性为zh时有效String
showBorderTop是否显示日历组件的顶部边框Booleantrue
resizeable屏幕尺寸改变时,是否重绘日历组件Booleantrue

Slots

插槽名说明
default自定义日期格子的内容。作用域插槽参数:{day, today, choosedDay},每个属性都是一个日期对象,格式参考change事件的返回值
leftIcon自定义左箭头内容
rightIcon自定义右箭头内容

Events

事件名说明回调参数
change选中日期变化事件,函数参数回传当前当前选中的日期数据。Object;数据格式如下:
{

dateFormat: "YYYY/MM/DD",
year: "YYYY",
month: "MM",
date: "DD",
timestamp: 1575129600000,
day: "日"

}
firstDayChange数据格式同change事件返回的数据格式Object; 当前显示的最左侧日期变化事件(常伴随着左右按钮点击事件发生,但其他情形比如屏幕resize事件等也可能会触发此事件),函数参数回传当前当前最左侧的日期数据。
swipeClick左右按钮点击事件。回调函数返回左右方向;'left':左侧按钮点击事件
'right':右侧按钮点击事件
swipeToEnd设置了最大/最小 日期时,点击左右按钮,滑动到最左边/右边时,会触发此事件。回调函数返回左右方向;当左右按钮滑动到尽头后,再次点击按钮,不会触发“swipeClick”点击事件'left':左侧日期滑动到最小值事件
'right':右侧日期滑动到最大值事件

ClassName

‘date-item-weekend’ 周末日期样式的个性化配置:

基于可能出现的使用场景,对于周末日期提供个性化样式设置的通道;

你可以通过审查元素发现,周末的日期格子,会自带名为‘date-item-weekend’的class名;

你可以基于此class名称,在项目中使用任意的样式来覆盖组件原本的样式;包括但不限于日期背景色,文字颜色,边框,after/before伪元素样式……

‘date-highlighted’ 自定义日期:

配合props的highlightedDates属性使用,使用方式同上

 示例代码

<vue-horizontal-calendar choosedDate="2019/12/01" v-on:change="dateChange2"></vue-horizontal-calendar>

data() {
  return {
      choosedDay2: {
        dateFormat: "",
        year: "",
        month: "",
        date: "",
        day: "",
        timestamp: ""
      },
    }
}
methods: {
    dateChange2(day) {
      this.choosedDay2 = day;
    }
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值