现在项目上有个需求,在时间选择上需要精确到分钟,且分钟只能是0分钟或者是30分钟。

使用了antd-mobile的DatePicker组件,具体用法可参考:https://mobile.ant.design/components/date-picker-cn/

其中组件有个minuteStep参数,将其设置成30,即可只显示0分钟或者30分钟了。

但是在选择的时候发现了问题,点击时间控件,弹出时间选择的界面,如果不去选择0分钟或者30分钟,直接点击确认,控件会选择到当前时间的分钟数,这是不合理的,解决方法:

参考了https://www.zhihu.com/question/56076235,使用到了moment对象,需要在项目中引入moment.js。增加一个判断,如果选择到30分钟了,即不变。如果不是30分钟则将分钟数设置为0,具体做法如下:

                <DatePicker
value={this.state.startTime} minuteStep = {30}
onChange={startTime => this.setState({startTime: new Date(startTime).getMinutes() == 30 ? startTime : moment( new Date(startTime).setMinutes(0) ) })}
>
<List.Item arrow="horizontal"><font color="red"> * </font>开始时间</List.Item>
</DatePicker>

这样既可实现。

最新文章

  1. Python简单爬虫入门三
  2. Front End Developer Questions 前端开发人员问题(三)JavaScript部分
  3. 05.virsh命令的常用操作(kvm)
  4. bzoj3316: JC loves Mkk
  5. 项目分布式部署那些事(2):基于OCS(Memcached)的Session共享方案
  6. codeforces105d Bag of mice ——概率DP
  7. VendorNPC.lua --随身商人
  8. ORACLE 學習筆記
  9. Android v4、v7、v13 的区别
  10. 最熟悉的陌生人:ListView 中的观察者模式
  11. windows服务删除后,在次安装时无法安装启动。
  12. ASP.NET的分页方法(一)
  13. unity基本操作二
  14. 转:【Java并发编程】之八:多线程环境中安全使用集合API(含代码)
  15. vue使用国际化
  16. php程序员的成长之路
  17. gittalk报错Error
  18. OrCAD Capture CIS 16.6 从PDF文档中提取引脚定义,实现快速地编辑Part的引脚名称
  19. Get teststep of specific type
  20. IDEA常用快捷键总结

热门文章

  1. 使用python+ffmpeg+youtube-dl下载youtube上的视频
  2. 第一章(欢迎进入node.js世界)
  3. C语言 分割字符串
  4. Centos 7下添加新用户并授权
  5. RN酷炫组件圆形加载
  6. 当面试官问你GET和POST区别的时候,请这么回答.......
  7. AQS是什么?
  8. C++.sprintf
  9. anusplina 4.36版本使用提示 说明
  10. this 指向 及 调用方式