npm 包 my-vue-fullcalendar 使用教程

简介

my-vue-fullcalendar 是一个基于 Vue.js 框架开发的日历组件,具有独特的样式和丰富的功能,可用于展示日程安排、活动安排、会议安排等。本文将详细讲解如何使用该组件,以及如何自定义样式和功能。

安装

npm 安装:

--- ------- ------------------- ------

Vue 单文件组件使用:

----------
  ----------------- --------------------------------------
-----------

--------
------ -------------- ---- ----------------------

------ ------- -
  ----------- -
    ------------------- ---------------
  --
  ----- ---------- -
    ------ -
      -------- -
        -- ----
      --
    --
  --
--
---------

参数

my-vue-fullcalendar 组件接受以下参数:

参数 类型 默认值 描述
options Object {} 配置参数对象,详见下方
events Array [] 事件列表,每个事件对象应包含 idtitlestartend 属性,startend 属性应为 Date 对象或符合 YYYY-MM-DD 格式的字符串。
locales Object {} 国际化语言对象,应包含所有使用的语言,key 为语言编码(如 en),value 为对应语言的配置。
customClassGenerator Function (start, end, locale, abbreviate) => [] 自定义生成日期单元格 class 名称的函数,startend 分别为单元格开始和结束的 Date 对象,locale 为当前语言配置,abbreviate 是否缩写月份。
customRenderer Function (h, events) => h('div', 'Custom render') 自定义渲染日历组件的函数,第一个参数为 Vue.js 官方提供的 h 函数,第二个参数为当前展示的事件列表。
disabledDates Array [] 禁止选择的日期列表,每个日期应为 Date 对象或符合 YYYY-MM-DD 格式的字符串。
defaultDate Date/String new Date() 日历默认展示的日期
disabledWeekdays Array [] 禁止选择的星期列表,从 0 开始编号,即星期日为 0,星期六为 6
direction String 'ltr' 日历展示的文字方向,ltr 表示从左向右,rtl 表示从右向左。
firstDay Number 0 一周从星期几开始,从 0 开始编号,即星期日为 0,星期六为 6
header Object {left: 'prev,next today', center: 'title', right: 'month,agendaWeek,agendaDay'} 日历头配置,可通过修改 leftcenterright 三个属性的值来自定义头部布局。
height String 'auto' 日历高度,可以是像素值或百分比值。
slotDuration String '00:30:00' 每个日历时段的持续时间,以小时:分钟:秒数的格式表示。
theme Object {} 主题配置对象,详见下方。
timeZone String 'local' 日历使用的时区,可以是 'local' 或符合 IANA 时区标准的时区字符串。
validRange Object {start: null, end: null} 允许选择的日期范围,startend 属性应为 Date 对象或符合 YYYY-MM-DD 格式的字符串。
viewDisplay Function noop 日历视图切换的回调函数,接受当前展示视图的名称 view、当前展示视图的开始时间 start 和结束时间 end 三个参数。
viewRender Function noop 日历视图渲染完成的回调函数,接受当前展示视图的名称 view 和当前展示视图的 element 两个参数。
weekendDays Array [0, 6] 周末的星期列表,从 0 开始编号,即星期日为 0,星期六为 6
windowTop Number 0 日历可视区域顶部离窗口顶部的距离。
windowResize Function noop 日历大小变化时的回调函数,接受当前窗口大小 newSize 和上一次窗口大小 oldSize 两个参数。

options 参数详解

参数 类型 默认值 描述
aspectRatio Number 1.35 日历视图宽度与高度的比例。
allDayDefault Boolean true 是否默认将事件添加到全天事件列表中。
allDaySlot Boolean true 是否在日历顶部添加全天事件的时间轴。
allDayText String '全天' 全天事件的默认显示文本。
axisFormat String 'h(:mm)t' 坐标轴时间的格式。具体格式含义详见 http://momentjs.com/docs/#/displaying/format/
businessHours.end String '18:00:00' 工作时间结束的时间点。
businessHours.start String '09:00:00' 工作时间开始的时间点。
buttonText.next String 'next' 日历头部下一个按钮的文本。
buttonText.prev String 'prev' 日历头部上一个按钮的文本。
buttonText.prevYear String 'prev year' 日历头部上一年按钮的文本。
buttonText.nextYear String 'next year' 日历头部下一年按钮的文本。
buttonText.today String 'today' 日历头部今天按钮的文本。
columnFormat String 'ddd' 日历列标题的格式。
columns Number 1 日历中每行列数。
dayClick Function null 单击日期单元格时触发的回调函数,接受日期 date, 视图名称 viewName 和时间块中的DOM元素 jsEvent 三个参数。
defaultView String 'month' 日历默认展示的视图名称。支持 'month''agendaWeek''agendaDay''basicWeek''basicDay' 五种视图。
dragOpacity Number 0.75 拖动事件时的不透明度。
dragRevertDuration Number 500 拖动事件时返回原始位置的动画持续时间。
dragScroll Boolean true 拖动事件时是否自动滚动。
dragStart Function null 开始拖动事件时触发的回调函数,接受 事件对象eventData 和 DOM 元素 jsEvent 两个参数。
dragStop Function null 停止拖动事件时触发的回调函数,接受 事件对象 eventData 和 DOM 元素 jsEvent 两个参数。
droppable Boolean false 是否接受拖入事件。
drop Function null 拖入事件时触发的回调函数,接受 日期 date、元素 jsEvent、数据对象 ui 和事件对象 event 参数。
dropAccept String '*' 拖入事件的可接受类型。
dropEvent Function null 将事件拖入视图时的回调函数,接受元素 jsEvent 和数据对象 ui 两个参数。
dropOpacity Number 0.75 拖入事件时的不透明度。
eventAfterAllRender Function null 事件渲染完成后触发的回调函数。
eventAfterRender Function null 渲染事件时触发的回调函数,接受事件对象 event 和 DOM 元素 element 两个参数。
eventAllow Function function(callback) { callback(true); } 自定义验证可拖动事件是否可放置的函数,接受事件对象 event、起始日期 start、终止日期 end 和回调函数 callback 四个参数。
eventBackgroundColor String '' 时间块背景色。
eventBorderColor String '' 时间块边框颜色。
eventClick Function null 点击事件块时触发的回调函数,接受事件对象 event 和 DOM 元素 jsEvent 两个参数。
eventColor String '' 事件默认颜色。
eventConstraint Object {} 事件约束条件。
eventDataTransform Function identity 数据点的变换函数。
eventDestroy Function null 销毁事件块时触发的回调函数,接受 事件对象 event 和 DOM 元素 jsEvent 两个参数。
eventDrop Function null 事件拖动完成后触发的回调函数,接受 拖动后的事件对象 event、拖动后的起始日期 start、拖动后的终止日期 end 和 原所在 cell 对象 jsEvent 四个参数。
eventDurationEditable Boolean true 事件持续时间是否可编辑。
eventEditable Boolean true 事件是否可编辑。
eventAfterStartEditable Function null 事件开始后是否可编辑的回调函数,接受参数 event 和布尔值 editable 两个参数。
eventLimit Boolean false 事件块是否合并显示。如果为 false,则事件块显示在当前日期单元格中,如果为 true,则在日历顶部使用“+n more”显示剩余事件数量。
eventLimitClick String 'popover' eventLimit 为 true 时点击“+n more”链接时展示事件的方式。'popover' 表示弹出框展示,'week' 表示将视图切换到周视图。
eventLimitText Function null eventLimit 为 true 时“+n more”链接的文本函数。精度默认是“n”。接受一个整数作为参数。
eventMouseover Function null 鼠标移到事件块上时触发的回调函数,接受 事件对象 event、DOM 元素 element 和鼠标事件 jsEvent 三个参数。
eventMouseout Function null 鼠标从事件块移开时触发的回调函数,接受 事件对象 event、DOM 元素 element 和鼠标事件 jsEvent 三个参数。
eventOverlap Boolean true 事件是否可重叠。
eventRender Function null 渲染事件块时触发的回调函数,接受 事件对象 event、DOM 元素 element 和完整日历中的数据对象 view 三个参数。
eventResizableFromStart Boolean false 事件是否从开始位置开始缩放。
eventResize Function null 事件调整大小结束后触发的回调函数,接受 长度 delta 和原始事件对象 event 两个参数。
eventResizeStart Function null 开始调整事件大小时触发的回调函数,接受 事件对象 event 和尺寸大小 jsEvent 两个参数。
eventResizeStop Function null 停止调整事件大小时触发的回调函数,接受 事件对象 event 和尺寸大小 jsEvent 两个参数。
eventSourceFailure Function null 数据源出错时触发的回调函数。
eventSourceSuccess Function identity 数据源返回成功时的变换函数。
eventStartEditable Boolean true 事件开始时间是否可编辑
eventTextColor String '' 事件文本颜色。
events Array [] 事件列表。
eventDataTransform Function identity 数据点的变换函数。
firstHour Number 6 日历中每天的第一个可见小时。
fixedWeekCount Boolean true 是否始终显示特定行数。
headerDropdownSymbol String '▼' 下拉列表的符号。
handleWindowResize Boolean true 是否处理 window.resize 事件。
isRTL Boolean false 是否启用右到左阅读模式。
lazyFetching Boolean true 是否懒加载数据点。
loading Function null 日历加载时显示的回调函数,接受 布尔值 isLoading 和 DOM 元素 view 两个参数。
maxTime Moment null 最大可选时间。
minTime Moment null 最小可选时间。
nextDayThreshold Moment '09:00:00' 一天的结束时间,此时应将下一天的事件计入当前日期。
noEventsMessage String '暂无事件' 没有事件时的提示信息。
overheadThreshold String '0.5' 当时间块超过单元格的一定比例时,使用半透明样式展示。
timezone String new Date().getTimezoneOffset() 日历使用的时区。
timeFormat String 'h(:mm)t' 时间格式。具体格式含义详见 http://momentjs.com/docs/#/display

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/6005696581e8991b448e4d2d


猜你喜欢

  • npm 包 karma-processenv-preprocessor 使用教程

    简介 Karma 是一个流行的 JavaScript 测试运行器,它可以运行在浏览器或 headless 浏览器中。 karma-processenv-preprocessor 是 Karma 的一个...

    3 年前
  • npm 包 noxxy 使用教程

    前言 在前端开发中,随着项目的复杂性不断增加,我们常常需要使用到一些常用的工具或库,而 npm 就是我们常用的工具之一。在这篇文章中,我们将会介绍如何使用 npm 包 noxxy,它可以帮助我们方便地...

    3 年前
  • npm 包 @miriamjs/api-client 使用教程

    介绍 在前端开发中,经常会需要向后端发送请求获取数据,而通过写 Ajax 请求代码实现这个过程有时候比较麻烦。因此,前端开发人员通常会使用一些对请求进行封装的工具或者库。

    3 年前
  • npm 包 bitpay-serverless 使用教程

    简介 bitpay-serverless 是一个基于 Node.js 的 npm 包,它提供了一种快速搭建和运行支付服务的方法,可以帮助开发者快速构建安全、可靠的支付服务,同时还支持多种加密货币。

    3 年前
  • npm 包 @elemefe/egg-ebaas 使用教程

    介绍 @elemefe/egg-ebaas 是一个基于 Egg.js 的集成式平台,提供了一组完整的前端开发工具和服务,包括但不限于 webpack、pm2、esbuild、LESS、TypeScri...

    3 年前
  • npm 包 aglio-theme-onlicar 使用教程

    本文主要介绍一款 npm 包 aglio-theme-onlicar 的使用方法,该包是用于生成 API 文档的主题之一。 什么是 aglio-theme-onlicar aglio-theme-...

    3 年前
  • npm 包 mapping-factory 使用教程

    在前端开发中,经常会出现需要进行数据映射的情况,而 mapping-factory 就是一个能够帮助我们完成数据映射的 npm 包。本文将详细介绍 mapping-factory 的使用方法以及相关注...

    3 年前
  • npm 包 nano-clone 使用教程

    在前端开发中,我们经常需要对JavaScript对象进行克隆操作。虽然对象克隆的实现并不困难,但通常情况下我们还需要考虑一些边界情况,比如克隆出的对象是否完全与原对象一致、深克隆还是浅克隆等。

    3 年前
  • npm 包 winreg-silent 使用教程

    前言 随着前端技术不断发展,前端也不再仅仅是浏览器中的简单页面了。前端工程师的工作范围不断扩大,而其中的一个重要部分就是与本地机器相关的操作。在这个过程中,我们可能需要使用到一些系统级别的 API,例...

    3 年前
  • npm 包 tkl 使用教程

    简介 tkl 是一个基于 Vue 技术栈的组件库,提供了诸如按钮、布局、表格、表单等常见组件,同时也可以方便地自定义主题和样式。 作为前端开发者,我们经常需要使用各种组件库来简化开发,tkl 提供了这...

    3 年前
  • npm 包 record-audio-js 使用教程

    npm 包 record-audio-js 使用教程 record-audio-js 是一款前端录音的 npm 包,它使用 Web API 的 MediaRecorder 接口,支持录制并保存 Web...

    3 年前
  • npm 包 `node-stationery` 使用教程

    本文将介绍如何使用 node-stationery,以及它带来的便利性和使用指导建议。 什么是 node-stationery node-stationery 是一个开源的前端工具集,旨在提高前端...

    3 年前
  • npm 包 objectnotnull 使用教程

    在前端开发中,处理对象类型的数据是非常常见的任务。但是,在某些情况下,对象可能不存在或为 null 或 undefined,这可能导致应用程序的崩溃。为了避免这种情况,可以使用 objectnotnu...

    3 年前
  • npm包rlx-js使用教程

    什么是rlx-js rlx-js是一个基于JavaScript的库,用于处理循环引用的问题。循环引用是指两个或多个对象相互引用,导致内存泄漏或报错。rlx-js通过简单的方法,解决了这一问题。

    3 年前
  • npm 包 rycou-test 使用教程

    前言 在前端领域中,我们经常会使用一些 npm 包来完成各种功能,提高开发效率。今天我要介绍的是 rycou-test 这个 npm 包,该包可以用于前端单元测试,并且具有非常简单易用的接口。

    3 年前
  • npm 包 auto-styles-loader 使用教程

    在前端开发中,样式文件的加载是一个常见的问题。当我们在使用 CSS 或者 LESS 等样式预处理器时,我们通常需要手动将样式文件引入到 HTML 或者 JS 文件中。这个过程比较繁琐,而且容易出错。

    3 年前
  • npm 包 jquery-fieldselection 使用教程

    在前端开发中,经常会涉及到文本选区的操作。jQuery 是一个流行的 JavaScript 库,用于简化 DOM 操作,其中也有一个名为 jquery-fieldselection 的 npm 包,可...

    3 年前
  • npm 包 mn-accordion 使用教程

    简介 mn-accordion 是一个基于 JavaScript 和 CSS 的前端组件库,旨在提供一种简单而灵活的方式来为网页创建折叠面板。 安装 mn-accordion 可以通过 npm 包管理...

    3 年前
  • npm 包 upcn-header-lib 使用教程

    简介 upcn-header-lib 是基于 Vue.js 的一个组件库,主要用于创建适用于 UPcN 系统头部导航的 UI 组件。此库提供了诸如导航菜单、通知中心、用户信息等功能,使得程序员们能够快...

    3 年前
  • npm 包 webpack-assembler 使用教程

    引言 在前端开发中,我们常常需要将多个 JavaScript 模块打包成一个或多个文件,以便于浏览器加载。而 webpack 是目前最流行的打包工具之一。虽然 webpack 在某些方面用起来十分方便...

    3 年前

相关推荐

    暂无文章