react-hash-calendar,移动端日期时间选择插件
按照惯例,先上效果图
vue 版本同款日历:https://github.com/TangSY/vue-hash-calendar
react-hash-calendar
- 支持手势滑动操作
- 上下滑动 切换 周/月 模式
【周模式中】 左右滑动可切换 上一周/下一周
【月模式中】 左右滑动可切换 上一月/下一月
安装使用说明
npm i react-hash-calendar
Demo
或者请用浏览器的手机模式查看:https://www.hxkj.vip/demo/react-calendar/
- 觉得好用可以给一个 star 哦~~
github 地址:https://github.com/TangSY/react-hash-calendar
API
属性 | 说明 | 类型 | 默认 |
---|---|---|---|
visible | 控制日历组件的显示或隐藏,需使用 .sync 修饰符 |
boolean | false |
onVisibleChange | 日历显示状态改变时调用,参数为 { visible } | (visible: boolean) => void | - |
scrollChangeDate | 控制滑动的时候是否修改选中的日期 | boolean | true |
model | 日历组件以哪种形式展示。inline:内联的方式。dialog:弹窗的方式 | string | inline |
defaultDatetime | 指定默认时间。 | Date | now |
format | 确认日期时,回调事件返回的日期格式。如“YY/MM/DD hh:mm” 、“YY 年 MM 月第 DD 天,当前时间 hh 时 mm 分”、“MM DD,YY at hh:mm F” | string | YY/MM/DD hh:mm |
weekStart | 以星期几作为日历每一周的起始星期。可选['sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday'] | string | sunday |
pickerType | 选择器类型 datetime:日期+时间 date:日期 time:时间 | string | datetime |
showTodayButton | 是否显示返回今日按钮 | boolean | true |
isShowWeekView | 是否以周视图展示组件 | boolean | false |
isShowAction | 是否显示日历组件操作栏(标题栏) | boolean | true |
disabledWeekView | 禁用周视图(设置为 true 后,无法上下滑动进行周/月切换) | boolean | false |
disabledDate | 设置日期的禁用状态,参数为当前日期,要求返回 boolean (禁用该日期需返回 true) | Function | - |
disabledScroll | 设置日历的禁止滑动方向。可选['left', 'right', 'up', 'down', 'horizontal', 'vertical', 'all', ''] 。可取其一控制单个方向。 | string | '' |
markDate | 需要被标记的日期,可按不同颜色不同标记类型分组标记(不分组默认蓝色)。如:[{color: 'red',date: ['2019/02/25']},{color: 'blue',type: 'dot',date: ['2019/01/20']},'2019/03/20'] | Array | [] |
markType | 标记图案类型 dot:小圆点(日期下方小圆点标记) circle:小圆圈(日期被小圆圈包围) dot+circle:同时使用小圆点与圆圈标记 | string | dot |
minuteStep | 间隔时间。(分钟的步长) | number | 1 |
lang | 选择的语言版本。可选值:['CN', 'EN'] | string | CN |
dateClickCallback | 日历被点击时调用,参数为 { date }。(返回的日期格式取决于 format 属性) | (date: Date | string) => void | - |
dateConfirmCallback | 点击确定按钮时调用,参数为 { date }。(返回的日期格式取决于 format 属性) | (date: Date | string) => void | - |
touchStartCallback | 开始滑动日历时调用,参数为 { event } | (event: React.TouchEvent) => void | - |
touchMoveCallback | 日历滑动中时调用,参数为 { event } | (event: React.TouchEvent) => void | - |
touchEndCallback | 日历滑动结束时调用,参数为 { event } | (event: React.TouchEvent) => void | - |
slideChangeCallback | 日历滑动的方向,参数为 { direction }。(返回值有 right、left、up、down 其中之一) | (direction: string) => void | - |
weekSlot | 自定义星期内容。例如可用于自定义星期样式等等,参数为 { week }。 | (week: string) => React.ReactNode | - |
daySlot | 自定义日期内容。例如可用于添加农历之类的。参数为 { date, extendAttr },其中 extendAttr 参数包含 isMarked (该日期是否被标记)、isDisabledDate (该日期是否被禁用)、isToday (该日期是否为今天)、isChecked (该日期是否被选中)、isCurrentMonthDay (该日期是否为本月日期)、isFirstDayOfMonth (该日期是否为当月第一天),可用于一些特殊需求 |
(date, extendAttr) => React.ReactNode | - |
todaySlot | 自定义 "今天" 按钮文字内容以及样式 | () => React.ReactNode | - |
confirmSlot | 自定义 "确定" 按钮文字内容以及样式 | () => React.ReactNode | - |
actionSlot | 自定义操作栏(标题栏)内容以及样式 | () => React.ReactNode | - |
Other
- 如果有其他问题, 或者功能上不兼容的。可以邮件沟通 t@tsy6.com,或者 github 提交 issue。
赞助
react-hash-calendar,移动端日期时间选择插件的更多相关文章
- 基于zepto的移动端日期+时间选择插件
前段时间写了两个移动端的日期选择插件:轻量级移动端日期选择器,本来是为特定的场景中使用的,结果有同学反应不够灵活和强大.虽然我的看法是移动端的界面要尽可能简洁,功能要尽可能简单,但是难免还是会有各种各 ...
- vue-hash-calendar,移动端日期时间选择插件
按照惯例,先上效果图 vue-hash-calendar 基于 vue 2.X 开发的日历组件 支持手势滑动操作·1 原生 js 开发,没引入第三方库 上下滑动 切换 周/月 模式 [周模式中] 左右 ...
- 纯原生js移动端日期选择插件
最近在项目上需要使用日期选择插件,由于是移动端的项目,对请求资源还是蛮节约的,可是百度上一搜,诶~全是基于jquery.zepto的,本来类库就很大,特别像mobiscroll这种样式文件一大堆又丑又 ...
- vue3-hash-calendar,一款基于vue3.x开发的移动端日期时间选择组件
在大家的催更下,鸽了一天又一天,vue3-hash-calendar 终于在今天诞生了. 按照惯例,先上效果图 Demo 扫描上方二维码或者请用浏览器的手机模式查看:https://www.hxkj. ...
- Jquery mobiscroll 移动设备(手机)wap日期时间选择插件以及滑动、滚动插件
Jquery Mobiscroll是一个用于触摸设备(Android phones, iPhone, iPad, Galaxy Tab)的日期和时间选择器jQuery插件.以及各种滑动插件 可以让用户 ...
- [转载]Jquery mobiscroll 移动设备(手机)wap日期时间选择插件以及滑动、滚动插件
Jquery Mobiscroll是一个用于触摸设备(Android phones, iPhone, iPad, Galaxy Tab)的日期和时间选择器jQuery插件.以及各种滑动插件 可以让用户 ...
- Jquery mobiscroll 移动设备(手机)wap日期时间选择插件以及滑
$(function () { var currYear = (new Date()).getFullYear(); var opt={}; //opt.date = {preset : 'date' ...
- 纯原生js移动端城市选择插件
接着上一篇纯js移动端日期选择插件,话说今天同事又来咨询省市县联动的效果在移动端中如何实现,还是老样子,百度上一搜,诶~又全是基于jquery.zepto的,更加可恨的是大多数都是PC版的,三个sel ...
- 基于zepto的移动端日期和时间选择控件
前段时间给大家分享过一个基于jQuery Mobile的移动端日期时间拾取器,大家反应其由于加载过大的插件导致影响调用速度.那么今天我把从网络上搜集到的两个适合移动端应用的日期和时间选择插件分享给大家 ...
随机推荐
- 入门 第一个python可视化程序 基于pyqt5
不得不说 py的GUI实在是太难上手了 我现在突然很怀念MFC VB c#这些东西了 因为控件的代码你只要一点就能进入查看 而pyqt5 pyside2 都不可以 你要看就看全部的代码 你要改你也只能 ...
- MacOs/Liunx主机搭建windows平台双机调试环境
0x00 前言 本文的主要试用对象是Mac OS/Linux用户,对于想调试windows内核相关的一些东西时,需要搭建双机调试环境的一些记录.另外对于本机是windows的用户也完全试用,windo ...
- JavaScript 正则表达式:字符串中查找数字
以下代码是在一段字符串中,用正则表达式找到数字,使用 replace() 方法,用找到的数字的两倍值替换原数字.replace() 方法的第二个参数为一个函数,返回找到数字的两倍值. <scri ...
- Appium+python自动化环境搭建
一.步骤及环境 环境:Windows 7版本 64位系统(python) 1.jdk安装配置:jdk1.6.0 (64位) 2.android-sdk下载安装:android-sdk_r24.3.4- ...
- 【Kata Daily 190906】Vasya - Clerk(职员)
题目: The new "Avengers" movie has just been released! There are a lot of people at the cine ...
- 腾讯开源 APIJSON 连创五个第一
腾讯第一个码云推荐项目,// 其它最早创建的是 TencentOS-tiny(码云) 2019.8.23 腾讯第一个码云GVP项目,// 其它最早创建的是 TencentOS-tiny(码云) 201 ...
- 阿里巴巴开发手册强制使用SLF4J作为门面担当的秘密,我搞清楚了
之前已经详细.全面地介绍了 Log4j,相信小伙伴们已经完全掌握了.那我在读嵩山版的阿里巴巴开发手册(没有的小伙伴,记着找我要)的时候,就发现了一条「强制」性质的日志规约: 应用中不可以直接使用日志系 ...
- 对Spark硬件配置的建议
对于Spark开发人员来说,一个比较普遍的问题就是如何合理的配置Spark的硬件?当然如何合理的对Spark集群进行硬件配置要视情况而定,在这里给出以下建议: 存储系统 在大数据领域,有一句" ...
- 思科ASA放行主/被动FTP
实验环境: 设备说明: internet是一台windows10,用于模拟外网客户 ASA是思科ASA防火墙 FTP-SERVER是Centos7,Centos7上安装了vsftpd 实验说明: 本文 ...
- acm一些小细节/技巧
以后没有终止信号的输入统一用 : while(cin>>a) { ... } "1" 不是质数, 要注意. 当需要把一个数组中的数值初始化成正无穷时,为了避免加法算术 ...