Vuejs横向日历组件
去年末我自己写了个jquery的日历插件,我当时的思路是这样的:
1,获取每月第一天是星期几 eg:3
2,获取每月多少天 eg:30
然后循环,30天,循环30次,循环每次加1就不用说了 然后把每个值放进表格的td里面
然后获取上个月和下个月有多少天,按照上月自减和下月自加的方式把其他表格内容补齐,这样一个完整的以月为单元的日历就行了
php和js(javascript)根本不是同一类型语言(虽然都是编程语言)
php是负责后台数据交替的
javascript目前只是一个客户端的脚本语言(以后会强大的,我觉得这个语言很有前途)
不是同一类型。
如果要实现,光php不行,你还是要依赖javascript里的ajax方法,思路:
页面是日历,当单击月份,通过ajax传递参数,php然后执行通过ajax返回到页面上。
我觉得你没必要这样自己给自己找麻烦。
之前在项目中,有一个固定屏幕顶部的横向日历条的需求,当时找了半天,没发现有合适的能用于vue的现成的轮子,于是只好自己徒手撸了个日历组件。
最近有点时间,想着把这个组件完善完善,开源出来,也能方便有需要的朋友。只是出乎我意料的是,原本以为一天搞定的事情,愣是整了三五天。当你做一个基于业务的组件时,只需针对项目需要去考虑,能省的就省了,动画不好做就不要了……;而当你真的想做一个能广泛使用的开源组件时,要考虑和兼顾的点就多了很多。偏偏我还有点完美主义,总想着自己做出来的东西尽可能的完善,尽可能适应更多元的需求场景,以至于整到最后,英文版的说明文档都搞了一份。哈哈哈
------------------------- 划重点分割线 -------------------------
这是一个适用于 vuejs 的、 横向的 、 条状的 、适用于 PC端 的 日历组件 ,有需要的同学,可以进入下面的在线链接查看使用场景和方法。有发现bug或者改进意见,欢迎提出来;如果有帮到你,请不要吝啬点亮一颗小星星,Thx~
Github地址
在线文档和示例说明
// 初始化时间设置
var DateRange = {
startTime:“2016-02”,
endTime:“2017-07”
};
$("workload [name = 'startMonth']")datepicker({
"startView":1,
minViewMode:1,
format:"yyyy-mm",
'endDate':DateRangeendTime,
'startDate':DateRangestartTime
})on('changeDate',function(e){
var startTime = edate;
$("workload [name = 'endMonth']")datepicker('setStartDate',startTime);
});
$("workload [name = 'endMonth']")datepicker({
"startView":1,
minViewMode:1,
format:"yyyy-mm",
'maxDate':DateRangeendTime,
'minDate':DateRangestartTime
})on('changeDate',function(e){
var endTime = edate;
$("workload [name = 'startMonth']")datepicker('setEndDate',endTime);
});
0条评论