背景
前一阵,应公司的需求,需要一个在移动端运行的react组件datepicker
(选择日期)。
搜索查找过后,我并没有找到一个既轻量级简洁又满足需求的组件。大部分现成的日期选择器都是相对于pc端开发的。
思考过后变决定自己写一套移动端react日期选择器组件react-mobile-datepicker。
过程
开发过程中并没有什么阻碍,功能完成后,经过了一系列单元测试,便发布出去了,旧版如图:
允许用户修改背景,字体,按钮颜色。
允许用户上下滑动日期(但每日滑动仅限修改一个日期)
这个2.xx版本的日期选择器,简单粗暴,一经发布就得到了广泛的吐槽。
吐槽的内容有:
样式丑陋
配置选项太少,无论怎么调颜色都很丑
修改的日期不方便
教训
经过大量参考其他日期选择器的样式以及配置选项后,我发现用户想要的并不是自己控制组件的背景,文字颜色,而是需要一个已经配置好并符合常规,优雅的日期选择器。用户希望有现成的好看并且主流的样式,而不是自己编写样式。
于是乎,在3.xx的版本中,预定义了5个主题供用户来选择,如图:
default
dark
ios
android
android-dark
为了满足更多的需求,优化后的组件添加了其他的一些配置项,如让用户自定义显示的日期格式,如图:
之前上下滑动组件只能一个一个修改日期,优化后滑动日期的范围更加广泛。
2.xx版本:
新版本:
总结
经过这次开发的教训,我明白了开发一个好的组件,并不应该急于求成求,想当然的只完成单一情况的需求。
而应该从用户的角度出发,提高组件的易用性与灵活性。同时感谢吐槽与批评我的开发者,正因为有这些人的融入,才能让每一个前端组件不断的完善,为我们所用。最后,诚挚邀请大家pull requests代码。不断完善国内的前端大业。
Github地址:https://github.com/lanjingling0510/react-mobile-datepicker
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。