更新记录

1.0.6(2023-11-29)

增加区间选择模式

1.0.5(2023-11-02)

修复h5打开报错

1.0.4(2023-09-27)

修复isAbleSelectFutureDate不生效问题

查看更多

平台兼容性

Vue2 Vue3
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序
HBuilderX 3.6.15 app-vue app-nvue
钉钉小程序 快手小程序 飞书小程序 京东小程序
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari

next-date-picker

日期选择组件

有四种模式:

  1. 简单的年月日弹窗选择(mode="simple")
  2. 日历弹窗选择多个日期(多选)(mode="multiple")
  3. 日历弹窗选择单个日期(单选)(mode="single")
  4. 日历弹窗选择区间日期(区间)(mode="range")

遇到问题或有建议可以加入QQ群(455948571)反馈
如果觉得组件不错,给五星鼓励鼓励咯!

预览


功能预览 区间选择模式

依赖插件

  1. uni-popup
  2. uni-icons

参数

可选参数属性列表

参数名 说明 类型 是否必填 默认值 可选值
checkedToady 是否默认选中今日,仅(mode="multiple" 或 mode="single")模式生效 Boolean false true
defaultCheckedList 默认选中的日期,仅(mode="multiple" 或 mode="single")模式生效 Array [] -
isAbleSelectFutureDate 是否可以选择未来日期,仅(mode="multiple" 或 mode="single")模式生效 Boolean true false
showMonthOnCenter 是否在日历中间显示大大的月份数字,仅(mode="multiple" 或 mode="single")模式生效 Boolean true false
title 日期弹窗的标题 '选择日期' String 选择日期 -
startDate (mode="single")简单模式下的开始日期 '1971-01-01' String '' -
endDate (mode="single")简单模式下的结束日期 '2099-12-31' String '' -
defaultDate (mode="single")简单模式下的默认日期 今日的日期 String '' -
themeColor 组件的主题色,包含选择时的颜色,以及常见文字按钮颜色 '#f9ae3d' String '#f9ae3d' -
mode 组件的模式 mode="multiple"(多选),mode="single"(单选),mode="simple"(简单),mode="range"(区间) String 'simple' -

Event 事件

事件名 说明 类型 回调参数
finishSelectDate 菜单收起时返回的筛选结果(例如:['2023-03-11']) emit array

示例代码vue3

<template>
    <view>
        <next-date-picker 
            ref="nextDatePickerRef" 
            :mode="mode"
            :isAbleSelectFutureDate="false"
            :defaultDate="dateModel"
            @finishSelectDate="finishSelectDate" 
            :defaultCheckedList="[]">
        </next-date-picker>

        <view style="margin-top: 48rpx;">
            <view @click="show('simple')" class="btn">简单选择模式</view>
            <view @click="show('range')" class="btn">日历区间模式</view>
            <view @click="show('multiple')" class="btn">日历多选模式</view>
            <view @click="show('single')" class="btn">日历单选模式</view>
        </view> 
    </view>
</template>

<script>
    import {ref, unref} from 'vue'
    export default {
        setup() {
            const mode = ref('simple');
            const nextDatePickerRef = ref();
            function show(showType) {
                mode.value = showType;
                nextDatePickerRef.value.open();
            }
            function finishSelectDate(e) {
                console.log("选择了日期:",e);
            }
            const dateModel = ref('2023-5-11')
            return {
                mode,
                show,
                finishSelectDate,
                nextDatePickerRef,
                dateModel
            }
        }
    }
</script>

<style lang="scss">
.btn{
    width: 600rpx;
    margin-left: 74rpx;
    margin-right: 74rpx;
    text-align: center;
    padding: 12rpx;
    background-color: #e49a30;
    color: aliceblue;
    border-radius: 12rpx;
    margin-top: 24rpx;
}
</style>

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件不采集任何数据

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问