Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

laydate日历组件改造心得 #11

Open
kuckboy1994 opened this issue Nov 30, 2017 · 0 comments
Open

laydate日历组件改造心得 #11

kuckboy1994 opened this issue Nov 30, 2017 · 0 comments

Comments

@kuckboy1994
Copy link
Owner

最近两天对layDate 5.0.85版本进行了改造。来谈一下心得。

修改内容

  1. 修复了当minmax大的时候。在切换到月份显示界面的时候,最小值的月份显示为不可点。
  2. 增加了过滤日期的功能(正选和反选)
  3. 增加了选择最近的功能
  4. 增加了暗黑主题
    想要体验的小伙伴,点击传送门

体会

当时豆饼(我的同事小伙伴)推荐了我使用layDate日历组件,我看了一下感觉样式上和功能上基本都满足我们工作所需,而且是开源的(这就方便我们个性化的定制)。号称是layui独立维护的三大组件之一,而且还是最近重写的,瞬间感觉就被他征服了。立马上手!

当时还是有点心虚的,毕竟还是第一次改源码,风险还是存在的。发现写法和我以前写原生js插件的差不多(复杂程度还是差很多的),还能看得懂些。但是有些方法就有点不知为何这么写了,但主要还是完成我的任务。读代码的时候发现他封装了很多类似jQuery的方法,如:
extend、each、addClass、removeClass、hasClass、attr、find、html、val、append、remove、on、off。
还有一些个性化的方法,如:
elem(创建元素)、elem(创建元素)、addStr(追加字符)、digit(数字前置补零)。
这些方法其实在平常的工作中也是很常用的,但jQuery已经帮我们做好了。但是如果在现在化的工作流中比如(react、vue)中我们就不会去选择使用jQuery了,可能就需要我们自己封装了。到时候可以回头看看。

组件的config和方法都设置在原型上,一个是保证方法始终可用(上下文方便传递),另一个是方便链式调用。

laydate通过window对象向外暴露。

支持amd规范。

同时试了一下修改主题,主题的设置感觉不是很方便,如果我上传到资源服务器,要是要增加样式的话,就得替换文件,后期考虑增加配置样式地址。

过几天有空了整理一下,准备给master发个pull request。

拒绝97,拥抱开源! 2333

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant