VUE实现日历组件功能


Posted in Javascript onMarch 13, 2017

哈哈, 就在昨天笔者刚刚在Github 上发布了一个基于VUE的日历组件。过去做日历都是需要引用 jquery moment 引用 fullCalendar.js 的。几者加起来体积庞大不说,也并不是很好使用在vue这种数据驱动的项目里。所以笔者经过一周的拍脑袋,做了一个十分简陋的版本。

VUE实现日历组件功能

简介

目前只支持月视图,该组件是 .vue 文件的形式。所以,大家在使用的时候 是需要node的咯~~~

安装

npm install vue-fullcalendar

DEMO

针对这个组件, 本人做了一个十分简单的 demo。进入到该项目后

npm install
npm run dev

然后打开浏览器 输入 localhost:8080 你应该就能看到demo啦

使用

大致了解后肯定是使用的问题啦,你只需要把这个组件引入到你自己的vue项目中就可以自由使用啦,因为现在是比较初步的版本。所以笔者十分鼓励大家针对自己的需求做二次开发,

import fullcalendar from 'vue-fullcalendar'

API

既然是组件,笔者自然预先定义了一些小属性。不过不用担心,都是基于VUE的

props

1、events 是该组件唯一接受的参数 用来表示该日历上的所有日程事件,他的格式应该如下

events = [
     {
      title : 'event1',
      start: '2016-07-01',
      YOUR_DATA : {}
     },
     {
      title : 'event2',
      start : '2016-07-02',
      end : '2016-07-03',
      YOUR_DATA : {}
     }
   ]

title 自然就是事件的标题啦 会直接显示在日历上

start 事件的开始日期 必填哦

end 事件的结束日期 没填就默认是开始日期

YOUR_DATA 你自己定义的一些数据 变量名随意 在后续都会被vue的广播事件传递

events

这里的events 可不是上面说的 props 里的events 哦 而是 你在使用日历 时 一些行为的 反馈。 比如你点击 某一天 某个时间 日历组件都会向外部 dispatch 一个对应的事件和相应的参数

'changeMonth' 事件, 当你切换月份时触发

this.$dispatch('changeMonth', start, end)

start 是这个月视图(并不是这个月)的第一天 yyyy-MM-dd

end 是这个月视图(并不是这个月)的最后一天 yyyy-MM-dd

'eventClick' : 当你点击某个日历事件时触发

this.$dispatch('eventClick', event, jsEvent, pos)

event 就是这个日历事件对象啦 参考 上面的props

jsEvent 这次点击的原生 javascript 事件

pos 这个事件的相对于日历的相对坐标 在slot中使用

'dayClick' : 当你点击某一天触发

this.$dispatch('eventClick', day, jsEvent)

day 你点击的这一天的 Date 对象

jsEvent 这次点击的原生 javascript 事件

slots

为了方便开发者的自由定制我在组件中加了很多slots 来填写大家自己需要的东西 比如 事件卡片 筛选器,下图是一张我自己项目的 事件卡片 和筛选。当然我并没有把他们放进组件里。 I find my roof, you find yours.

VUE实现日历组件功能

结尾

因为这个组件还是比较初级的阶段,可能有不少问题,所以十分鼓励大家提issue或是下载后根据自己的需求二次开发。

demo下载:vue-fullcalendar_3water.rar

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript学习笔记(八) js内置对象
Jun 19 Javascript
简单谈谈javascript中的变量、作用域和内存问题
Aug 30 Javascript
Bootstrap布局方式详解
May 27 Javascript
JavaScript实现设置默认日期范围为最近40天的方法分析
Jul 12 Javascript
Vue-router 类似Vuex实现组件化开发的示例
Sep 15 Javascript
axios发送post请求springMVC接收不到参数的解决方法
Mar 05 Javascript
解决vue项目报错webpackJsonp is not defined问题
Mar 14 Javascript
微信小程序实现顶部下拉菜单栏
Nov 04 Javascript
JS/HTML5游戏常用算法之追踪算法实例详解
Dec 12 Javascript
详解Vue+elementUI build打包部署后字体图标丢失问题
Jul 13 Javascript
解决removeEventListener 无法清除监听的问题
Oct 30 Javascript
JS实现页面侧边栏效果探究
Jan 08 Javascript
JS正则表达式判断有效数实例代码
Mar 13 #Javascript
又一款MVVM组件 构建自己的Vue组件(2)
Mar 13 #Javascript
jQuery插件HighCharts实现气泡图效果示例【附demo源码】
Mar 13 #Javascript
干货!教大家如何选择Vue和React
Mar 13 #Javascript
JavaScript 数据类型详解
Mar 13 #Javascript
Java与JavaScript中判断两字符串是否相等的区别
Mar 13 #Javascript
Javascript中字符串相关常用的使用方法总结
Mar 13 #Javascript
You might like
自动跳转中英文页面
2006/10/09 PHP
php中理解print EOT分界符和echo EOT的用法区别小结
2010/02/21 PHP
ThinkPHP CURD方法之limit方法详解
2014/06/18 PHP
自己写的php中文截取函数mb_strlen和mb_substr
2015/02/09 PHP
详解PHP防止直接访问.php 文件的实现方法
2017/07/28 PHP
详解php反序列化
2020/06/10 PHP
PHP autoload使用方法及步骤详解
2020/09/05 PHP
JavaScript方法和技巧大全
2006/12/27 Javascript
jquery EasyUI的formatter格式化函数代码
2011/01/12 Javascript
AeroWindow 基于JQuery的弹出窗口插件
2011/06/27 Javascript
jQuery学习笔记之基础中的基础
2015/01/19 Javascript
Node.js Addons翻译(C/C++扩展)
2016/06/12 Javascript
jquery实现全选、不选、反选的两种方法
2016/09/06 Javascript
JS实现图文并茂的tab选项卡效果示例【附demo源码下载】
2016/09/21 Javascript
bootstrap输入框组件使用方法详解
2017/01/19 Javascript
Bootstrap里的文件分别代表什么意思及其引用方法
2017/05/01 Javascript
Vue+Typescript中在Vue上挂载axios使用时报错问题
2019/08/07 Javascript
微信小程序 scroll-view 实现锚点跳转功能
2019/12/12 Javascript
微信小程序8种数据通信的方式小结
2020/02/03 Javascript
keep-Alive搭配vue-router实现缓存页面效果的示例代码
2020/06/24 Javascript
微信小程序地图实现展示线路
2020/07/29 Javascript
JavaScript实现多层颜色选项卡嵌套
2020/09/21 Javascript
python实现在pickling的时候压缩的方法
2014/09/25 Python
在Python中使用SQLite的简单教程
2015/04/29 Python
Python基于matplotlib绘制栈式直方图的方法示例
2017/08/09 Python
python数据结构之链表详解
2017/09/12 Python
Python入门之三角函数全解【收藏】
2017/11/08 Python
Python格式化字符串f-string概览(小结)
2019/06/18 Python
详解python polyscope库的安装和例程
2020/11/13 Python
HTML5新控件之日期和时间选择输入的实现代码
2018/09/13 HTML / CSS
html通过canvas转成base64的方法
2019/07/18 HTML / CSS
HUGO BOSS美国官方网上商店:世界知名奢侈品牌
2017/08/04 全球购物
三项教育活动实施方案
2014/03/30 职场文书
好的旅游活动方案
2014/08/19 职场文书
对外汉语专业大学生职业生涯规划范文
2014/09/13 职场文书
文体活动总结
2015/02/04 职场文书