更新记录
1.0.0(2021-08-10) 下载此版本
去掉选择框与清空图标
平台兼容性
uni-app
| Vue2 | Vue3 | Chrome | Safari | app-vue | app-nvue | Android | iOS | 鸿蒙 | 
|---|---|---|---|---|---|---|---|---|
| √ | - | √ | √ | √ | × | - | - | - | 
| 微信小程序 | 支付宝小程序 | 抖音小程序 | 百度小程序 | 快手小程序 | 京东小程序 | 鸿蒙元服务 | QQ小程序 | 飞书小程序 | 快应用-华为 | 快应用-联盟 | 
|---|---|---|---|---|---|---|---|---|---|---|
| √ | √ | √ | √ | - | - | - | √ | - | - | - | 
其他
| 多语言 | 暗黑模式 | 宽屏模式 | 
|---|---|---|
| × | × | √ | 
重要通知:组件升级更新 2.0.0 后,支持日期+时间范围选择,组件 ui 将使用日历选择日期,ui 变化较大,同时支持 PC 和 移动端。此版本不向后兼容,不再支持单独的时间选择(type=time)及相关的 hide-second 属性(时间选可使用内置组件 picker)。若仍需使用旧版本,可在插件市场下载*非uni_modules版本*,旧版本将不再维护DatetimePicker 时间选择器
组件名:uni-datetime-picker 代码块:
uDatetimePicker
该组件的优势是,支持时间戳输入和输出(起始时间、终止时间也支持时间戳),可同时选择日期和时间。
若只是需要单独选择日期和时间,不需要时间戳输入和输出,可使用原生的 picker 组件。
点击 picker 默认值规则:
- 若设置初始值 value, 会显示在 picker 显示框中
- 若无初始值 value,则初始值 value 为当前本地时间 Date.now(), 但不会显示在 picker 显示框中
安装方式
本组件符合easycom规范,HBuilderX 2.5.5起,只需将本组件导入项目,在页面template中即可直接使用,无需在页面中import和注册components。
如需通过npm方式使用uni-ui组件,另见文档:https://ext.dcloud.net.cn/plugin?id=55
基本用法
在 template 中使用组件
<template>
    <view class="page">
        <text class="example-info">可以同时选择日期和时间的选择器</text>
        <uni-section :title="'日期用法:' + single" type="line"></uni-section>
        <view class="example-body">
            <uni-datetime-picker type="date" :value="single" start="2021-3-20" end="2021-6-20" @change="change" />
        </view>
        <uni-section :title="'时间戳用法:' + single" type="line"></uni-section>
        <view class="example-body">
            <uni-datetime-picker returnType="timestamp" @change="changeLog($event)" start="2021-3-20" end="2021-5-20"  />
        </view>
        <uni-section :title="'日期时间用法:' + datetimesingle" type="line"></uni-section>
        <view class="example-body">
            <uni-datetime-picker type="datetime" v-model="datetimesingle" @change="changeLog" />
        </view>
        <uni-section :title="'v-model用法:' + single" type="line"></uni-section>
        <view class="example-body">
            <uni-datetime-picker v-model="single" />
        </view>
        <uni-section :title="'插槽用法:' + single" type="line"></uni-section>
        <view class="example-body">
            <uni-datetime-picker v-model="single">我是一个插槽,点击我</uni-datetime-picker>
        </view>
        <uni-section :title="'无边框用法:' + single" type="line"></uni-section>
        <view class="example-body">
            <uni-datetime-picker v-model="single" :border="false" />
        </view>
        <uni-section :title="'disabled用法:' + single" type="line"></uni-section>
        <view class="example-body">
            <uni-datetime-picker v-model="single" disabled />
        </view>
        <uni-section :title="'日期范围用法:' + '[' + range + ']'" type="line"></uni-section>
        <view class="example-body">
            <uni-datetime-picker v-model="range" type="daterange" start="2021-3-20" end="2021-5-20"
                rangeSeparator="至" />
        </view>
        <uni-section :title="'日期时间范围用法:' + '[' + datetimerange + ']' " type="line"></uni-section>
        <view class="example-body">
            <uni-datetime-picker v-model="datetimerange" type="datetimerange"
                start="2021-3-20 12:00:00" end="2021-6-20 20:00:00" rangeSeparator="至" />
        </view>
    </view>
</template>
<script>
    export default {
        data() {
            return {
                single: '2021-04-3',
                datetimesingle: '2021-04-3',
                range: ['2021-03-8', '2021-4-20'],
                datetimerange: ['2021-03-20 20:10:10', '2021-05-10 10:10:10'],
            }
        },
        watch: {
            datetimesingle(newval) {
                console.log('单选:', this.datetimesingle);
            },
            range(newval) {
                console.log('范围选:', this.range);
            },
            datetimerange(newval) {
                console.log('范围选:', this.datetimerange);
            }
        },
        mounted() {
            setTimeout(() => {
                this.datetimesingle = '2021-5-1'
                this.single = '2021-5-1'
            },1000)
        },
        methods:{
            change(e) {
                this.single = e
                console.log('-change事件:', e);
            }
        }
    }
</script>
<style lang="scss">
    @import '@/common/uni-nvue.scss';
</style>API
DatetimePicker Props
| 属性名 | 类型 | 默认值 | 值域 | 说明 | 
|---|---|---|---|---|
| type | String | datetime | date/daterange/datetime/datetimerange | 选择器类型 | 
| value | String、Number、Array(范围选择)、Date | - | - | 输入框当前值 | 
| start | String、Number | - | - | 最小值,可以使用日期的字符串(String)、时间戳(Number) | 
| end | String、Number | - | - | 最大值,可以使用日期的字符串(String)、时间戳(Number) | 
| return-type | String | string | timestamp 、string、date | 返回值格式 | 
| border | Boolean、String | true | 是否有边框 | |
| rangeSeparator | String | '-' | - | 选择范围时的分隔符 | 
| placeholder | String | - | - | 非范围选择时的占位内容 | 
| start-placeholder | String | - | - | 范围选择时开始日期的占位内容 | 
| end-placeholder | String | - | - | 范围选择时结束日期的占位内容 | 
| disabled | Boolean、String | false | 是否不可选择 | |
| clearIcon | Boolean、String | true | 是否显示清除按钮(仅PC端适用) | 
DatetimePicker Events
| 事件名称 | 说明 | 返回值 | 
|---|---|---|
| change | 确定日期时间时触发的事件,参数为当前选择的日期对象 | 单选返回日期字符串,如:'2010-02-3';范围选返回日期字符串数组,如:['2020-10-1', '2021-4-1'] | 
| maskClick | 点击遮罩层触发 | - | 
Popup Methods
| 方法称名 | 说明 | 参数 | 
|---|---|---|
| show | 打开弹出层 | - | 
| close | 关闭弹出层 | - | 
组件示例
点击查看:https://hellouniapp.dcloud.net.cn/pages/extUI/datetime-picker/datetime-picker

 
                                                                                                                                                 收藏人数:
                                                                        收藏人数:
                                     https://github.com/dcloudio/uni-ui
                                                                                https://github.com/dcloudio/uni-ui
                                     https://www.npmjs.com/package/@dcloudio/uni-ui
https://www.npmjs.com/package/@dcloudio/uni-ui
                                     下载插件并导入HBuilderX
                                                        下载插件并导入HBuilderX
                                                     下载 499
 下载 499
                 赞赏 0
 赞赏 0
                 
             
                     
                                             下载 10661298
                    下载 10661298 
                 赞赏 1797
                        赞赏 1797 
                     
             
                     
             
                     
             
                     
             
                     
             
                     
             
                     
             
                     
             
                     
             
                     
             
                     
             
                     
             
                     
             
                     
             
                     
                         赞赏
                                赞赏
                             
             京公网安备:11010802035340号
京公网安备:11010802035340号