antd之RangePicker设置默认值方式

 更新时间:2022年12月02日 15:24:05   作者:TuMinQiang  
这篇文章主要介绍了antd之RangePicker设置默认值方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

RangePicker设置默认值

今天在项目中有使用到日期选择框,在antd中选择了一个可以选择起始时间和结束时间的日期选择框RangePicker

有个需求是需要将当前时间和当前时间的前一天作为它的默认值,期间遇到了很多bug,在一番修改和csdn后终于修改好了,特此记录一下

首先翻看一下antd中日期选择框的api,它有一个defaultValue的属性,如果是RangePicker的话,他是接受一个数组作为参数,分别作为起始和结束的时间默认值

有点坑的地方在与我刚开始没看懂这里的moment[],是啥意思,它这里需要传入moment对象,也就是你数组里的值必须要是moment对象

所以先要引入moment

运行:

npm install moment --save

在react中引入:

import moment from 'moment'
React.Component.prototype.$moment = moment

 然后就可以调用moment()将时间字符串转换成moment对象了,moment()方法接受两个参数,第一个是时间字符串如:'2021-01-29',第二个参数是时间格式,需要注意的时,你前面的时间字符串和后面的时间格式需要对应,如moment('2021-01-29','YYYY-MM-DD')或者moment('2021-01-29 18:49:20','YYYY-MM-DD HH:mm:ss')等,看你自己的项目需求了

如果你出现了类似这种的错

那大概率是不符合moment格式的问题了 

antd的RangePicker设置七天前,30天前,90天前

记录一下在业务中,用antd的日期组件设置默认选择范围的问题。

Antd的RangePicker设置七天前,30天前,90天前,并且设置默认时分秒为 00:00:00 ~ 23:59:59

    <RangePicker
      ranges={{
        最近一周: [moment().startOf('day').subtract(6, 'd'), moment().endOf('day')],
        最近一个月: [moment().startOf('day').subtract(30, 'd'), moment().endOf('day')],
        最近三个月: [moment().startOf('day').subtract(90, 'd'), moment().endOf('day')],
      }}
      showTime={{
        hideDisabledOptions: true,
        defaultValue: [moment('00:00:00', 'HH:mm:ss'), moment('23:59:59', 'HH:mm:ss')],
      }}
      onChange={(data, dataString) => {
        getDataRange(
          timeToTimestamp(dataString[0]),
          timeToTimestamp(dataString[1]),
        );
      }}
    />

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 路由react-router-dom的基本使用教程

    路由react-router-dom的基本使用教程

    在React中,路由是一套映射规则,是URL路径与组件的对应关系。使用React路由,就是配置路径和组件的对应关系,这篇文章主要介绍了路由react-router-dom的使用,需要的朋友可以参考下
    2023-02-02
  • React Router中Link和NavLink的学习心得总结

    React Router中Link和NavLink的学习心得总结

    这篇文章主要介绍了React Router中Link和NavLink的学习心得总结,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12
  • 全栈轻量级搭配之Remix Prisma Sqlite使用分析

    全栈轻量级搭配之Remix Prisma Sqlite使用分析

    这篇文章主要为大家介绍了全栈轻量级搭配之Remix Prisma Sqlite使用示例分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-05-05
  • React Store及store持久化的使用教程

    React Store及store持久化的使用教程

    这篇文章主要介绍了React Store及store持久化的使用教程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2024-01-01
  • React使用emotion写css代码

    React使用emotion写css代码

    这篇文章主要介绍了React如何使用emotion写css代码,帮助大家更好的理解和学习使用React,感兴趣的朋友可以了解下
    2021-04-04
  • 使用React实现一个简单的待办任务列表

    使用React实现一个简单的待办任务列表

    这篇文章主要给大家介绍了使用React和Ant Design库构建的待办任务列表应用,它包含了可编辑的表格,用户可以添加、编辑和完成任务,以及保存任务列表数据到本地存储,文中有相关的代码示例,需要的朋友可以参考下
    2023-08-08
  • 基于react封装一个通用可编辑组件

    基于react封装一个通用可编辑组件

    前段时间接到这样一个需求,需要封装一个组件实现可编辑,这个到底有多通用呢,就是需要在普通的文字展示包括表格,列表等等,所以本文将给大家介绍如何基于react封装一个通用可编辑组件,需要的朋友可以参考下
    2024-02-02
  • react hooks闭包陷阱切入浅谈

    react hooks闭包陷阱切入浅谈

    这篇文章主要介绍了从react hooks闭包陷阱切入浅谈react hooks,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • React 18 如何更新 state 中的对象

    React 18 如何更新 state 中的对象

    state 中可以保存任意类型的JavaScript值,包括对象,但是,不应该直接修改存放在 React state 中的对象,这篇文章主要介绍了React 18更新state中的对象,需要的朋友可以参考下
    2023-08-08
  • React性能优化的实现方法详解

    React性能优化的实现方法详解

    react凭借virtual DOM和diff算法拥有高效的性能,除此之外也有很多其他的方法和技巧可以进一步提升react性能,在本文中我将列举出可有效提升react性能的几种方法,帮助我们改进react代码,提升性能
    2023-01-01

最新评论