微信小程序demo提供了一个简单的日历组件,vant也提供了一个日历组件,在github上也有一些日历组件,我试用了一番,都多少存在一些不符合之处。重点说一下vant,它有几个问题:一是加载数据太大,一运行就加载至少一年以上的数据;二是样式不好控制,大小相修改一下就会变形;三是在日期上下方加文字不方便。
因为没有找到太好的组件可以引用,就自己想设计一个能方便控制的,遂有下面的设计,
1、采用grid组件显示日期,分三行,中间一行为日期具体天的数字,上面一行显示大小周提示、下面一行显示排班名称
2、采用scroll-view动态包含grid数目
3、一行显示几天,可以动态设置
1、日历头部
2、日历内容
3、日历结构体
4、具体每个月的日历算法
获取某个月的第一天和最后一天,再获取每天的星期数,循环放到grid结构体中
优点:一是加载数据量少,可控制;二是显示内容丰富,可以控制;三是也是显示可以使用slot,更加丰富
缺点:一不是专业日历组件,样式简单了些;二是加载数据量有限,grid自身也是一个组件,加载多了额外的开销肯定大起来。
功能:年月日时分秒,固定选择范围
效果:
自定义组件实现:
utils/datePicker.js
定义组件components/datePicker/datePicker.js
components/datePicker/datePicker.wxml
components/datePicker/datePicker.wxss
使用datePicker组件
index.json
index.wxml
index.js
安卓里面的时间控件与日期控件都是分开的,如果要同时使用的话用户体验度那肯定不好,整合了安卓中的时间与日期控件,可以同时显示出来方便用户进行选择,使用时只需要将文件导入项目中,再需要用到的地方使用如下代码欢迎分享,转载请注明来源:内存溢出
评论列表(0条)