Vue.js功能日历

Vue.js功能日历

插件名称:vue-functional-calendar

发布时间:2020年6月8日

插件作者:ManukMinasyan

官网 演示 GitHub下载

基于Vue.js的轻量级高性能日历组件。内存使用量少,性能好,样式好以及可伸缩性高

还支持日期选择器,日期范围,多个日历,模式日历等。

变更日志:

v2.8.88(08/16/2020)

  • 更新资料

v2.8.87(2020年7月4日)

  • 更新资料

v2.8.85(06/29/2020)

  • 添加了时间选择器的标题,它引起了问题。
  • 添加了范围清洁器按钮(带插槽)。

v2.8.79(05/05/2020)

  • 添加了dist文件夹
  • 更改了构建路径和目标
  • 添加了页脚插槽&& isLayoutExpandable道具
  • 将HTML标记更改为div,添加了带有动态内容的新道具isLayoutExpandable,添加了广告位navigationArrowLeft,navigationArrowRight
  • 更改了日历SCSS
  • 解决了与v模型有关的问题

安装和下载:

# NPM
$ npm install vue-functional-calendar --save

用法

Vue.use()

// 在vue文件中引入了
import FunctionalCalendar from 'vue-functional-calendar';
Vue.use(FunctionalCalendar, {
    dayNames: ['Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa', 'Su']
});

导入组件

// 在VUE文件引入
import { FunctionalCalendar } from 'vue-functional-calendar';

组件设定

export default {
    components: {
        FunctionalCalendar
    },
    data() {
        return {
            calendarData: {}
        }
    }
}

模板用法

<FunctionalCalendar
      // v-model="calendarData"
      
      // v-on:changedMonth="changedMonth"
      // v-on:changedYear="changedYear"
      
      // :sundayStart="true"
      // :date-format="'dd/mm/yyyy'"
      // :is-date-range="true"
      // :is-date-picker="true"      
       :...:
></FunctionalCalendar>

与配置一起使用

组件设定

export default {
    components: {
        FunctionalCalendar
    },
    data() {
        return {
            calendarData: {},
            calendarConfigs: {
                sundayStart: false,
                dateFormat: 'dd/mm/yyyy',
                isDatePicker: false,
                isDateRange: false
            }
        }
    },
}

模板用法

<FunctionalCalendar
      // v-model="calendarData"
      // :configs="calendarConfigs"
></FunctionalCalendar>

props

Prop类型默认值描述
sundayStartBooleanfalsetrue 周开始周日
newCurrentDateDatenew Date()new Date(2019,10,11) 日历当前日期
limits[Object, Boolean]false{min: ’31/10/2019′, max: ’31/12/2019′}设置日历显示,并标记日期限制。
minSelDays[Number, Boolean]false3设置最小选定天数。
maxSelDays[Number, Boolean]false10设置最大选定天数。
placeholder[String, Boolean]false‘yyyy/mm/dd’日期输入占位符
dateFormatString‘dd/mm/yyyy’‘yyyy/mm/dd’日期格式字符串
isDatePickerBooleanfalsetrue启用或禁用日期选择器
isMultipleDatePickerBooleanfalsetrue启用或禁用多个日期选择器
isDateRangeBooleanfalsetrue启用或禁用日期范围
withTimePickerBooleanfalsetrue启用或禁用时间选择器
isMultipleBooleanfalsetrue启用多个日历功能
calendarsCountNumber13日历计数,仅工作于is isMultiple
isSeparatelyBooleanfalsetrue分别启用日历
isModalBooleanfalsetrue启用模式日历功能
isAutoCloseableBooleanfalsetrue如果选择了日期,则隐藏选择器(日历)
isTypeableBooleanfalsetrue启用手动日期键入功能,仅与prop isModal一起使用
changeMonthFunctionBooleanfalsetrue使用列表,功能启用更改的月份
changeYearFunctionBooleanfalsetrue使用列表,功能启用更改的年份
changeYearStepNumber126更改年份列表步数
markedDatesArray[][’10/12/2020′, ’12/12/2020′] OR [{date: ’10/1/2020′, class: ‘marked-class’},{date: ’12/1/2020′, class: ‘marked-class-2’}]标记日期数组
markedDateRangeObject{start: false, end: false}{start: ’12/12/2020′, end: ’20/12/2020′} OR [{start: ’12/12/2020′, end: ’20/12/2020′}, {start: ’24/12/2020′, end: ’28/12/2020′}]标记日期范围
disabledDayNamesArray[][‘Su’,’We’]周中隐藏
disabledDatesArray[][’24/12/2020′,’27/12/2020′] OR [‘beforeToday’, ‘afterToday’, ’24/12/2020′,’27/12/2020′]禁用日期
dayNamesArray[‘Mo’, ‘Tu’, ‘We’, ‘Th’, ‘Fr’, ‘Sa’, ‘Su’][‘Monday’, ‘Tu’, ‘We’, ‘Th’, ‘Fr’, ‘Sa’, ‘Sunday’]工作日名称
monthNamesArray[“January”, “February”, “March”, “April”, “May”, “June”, “July”, “August”, “September”, “October”, “November”, “December”][“Jan.”, “Feb.”, “Mar”, “Apr.”, “May”, “Jun.”, “Jul.”, “Aug.”, “Sept.”, “Oct.”, “Nov.”, “Dec.”]月份名称
shortMonthNamesArray[“Jan”, “Feb”, “Mar”, “Apr”, “May”, “Jun”, “Jul”, “Aug”, “Sep”, “Oct”, “Nov”, “Dec”][“Jan.”, “Feb.”, “Mar”, “Apr.”, “May”, “Jun.”, “Jul.”, “Aug.”, “Sept.”, “Oct.”, “Nov.”, “Dec.”]短月份名称
showWeekNumbersBooleanfalsetrue显示星期数。
transitionBooleantruefalse 日历动画
hiddenElementsArray[][‘dayNames’, ‘navigationArrows’, ‘leftAndRightDays’, ‘month’] 隐藏日历元素
titlePositionStringcenterleft, right, center 设置标题位置
arrowsPositionStringspace-betweenleft, right, space-between 设置箭头位置
isDarkBooleanfalsetrue 黑暗主题
isLayoutExpandableBooleanfalsetrue 启用扩展日历布局

事件

事件输出量描述
dayClicked Object 获取点击天对象
selectedDay Object 获取所选日期的对象
changedMonth Date 月页已更改
changedYearDate 年份页面已更改
selectedDaysCount Number 获取日期范围日期之间的天数
opened 选择器已打开
closed 选取器已关闭
相关插件