【前端Vue】 iView时间控件选择年月日时分秒

前言

前段时间使iView框架进行后端管理系统开发时有选择时间精确到时分秒可选的需求。去查询iView的文档,组件DatePicker可以实现。

首先,我们来看下iView的官方文档。

DatePicker的API
OK,既然官方文档上可以实现,那么我们就按照文档上的示例进行开发。

 <DatePicker type="datetimerange" placeholder="Select date and time" style="width: 300px"></DatePicker>
 <DatePicker type="datetimerange" format="yyyy-MM-dd HH:mm:ss" placeholder="Select date and time" style="width: 300px"></DatePicker>

在这里插入图片描述
iViewDatePicker设置了format="yyyy-MM-dd HH:mm:ss格式,在选择日期后不是选择时间,而是默认填充了00:00:00。这样无法满足我需要设置到时分秒的需求。

实际需求
那有没有办法在选择日期后自动跳出选择时间的面板呢?在翻阅iView的源码后,找到了相关的解决方法。

在这里插入图片描述

解决方法

1、给DatePicker添加ref属性,绑定on-change事件。

2、在on-change事件内通过调用onSelectionModeChange方法,调取时间选择面板。

实操


1、控件要设置以下属性,切记,一定不能format属性,否则不生效。

type=“datetime”
ref=“starttime”
@on-change=“startTimeChange(‘starttime’)”
format=“yyyy-MM-dd HH:mm” (不要添加)

  <DatePicker
    type="datetime"
    ref="starttime"
    :value="startTimeVal"
    @on-change="startTimeChange('starttime')"
    clearable
    :editable="false"
    placeholder="选择开始时间"
    style="width: 300px;margin-left: 20px">
  </DatePicker>

2、on-change方法后打开时间面板

  startTimeChange(refName) {
	this.$refs[refName].onSelectionModeChange('time');
  },

3、获取选择的值

 this.startTimeVal = this.$refs.starttime.visualValue

按照上述方法即可使用DatePicker来选择精确的时分秒。

  • 5
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值