antd-DatePicker组件获取时间值,及相关设置方式


Posted in Javascript onOctober 27, 2020

DatePicker组件默认语言是英语,需要设置为中文的话,需要安装moment。

import moment from "moment";

import "moment/locale/zh-cn"

format属性,设置日期的格式,如“2020-02-28”。

设置日期

选择日期是今天之前【包含今天】

需要和moment搭配应用

// 设置默认的起始日期
    const disabledDate = (current) => {
      console.log(current)
      return current > moment().startOf('day');
    }
    <DatePicker disabledDate={disabledDate}

效果如下图:

antd-DatePicker组件获取时间值,及相关设置方式

如果是选择今天之后的日期【包含今天】

const disabledDate = (current) => {
      console.log(current)
      return current > moment().startOf('day');
    }

如图:

antd-DatePicker组件获取时间值,及相关设置方式

关于moment的API,可以参考 moment 的具体文档

获取时间值

官网提供的函数:

function onChange(date, dateString) {
 console.log(date, dateString);
 // date 就是原始的日期数值,dateString 就是我们需要的日期格式
}

antd-DatePicker组件获取时间值,及相关设置方式

如果DatePicker组件嵌套在form表单里面,有两种方式获取日期值

第一种方式:

使用官网提供的函数,并在State中设置日期参数

constructor(){
  super()
  this.state={
    date:""
  }
}

onChange = (value,dateString)=>{
  this.setState({
    date:dateString
  })
}

  handleSubmit1 = e => {
    const that = this;
    e.preventDefault();
    this.props.form.validateFieldsAndScroll((err, values) => {
      if (!err) {
        console.log(values.date)
        that.setState({
          date: that.state.date
        })
        that.getData(1, 10, that.state.date);
      }
    });
  };
<Form className="ant-advanced-search-form" onSubmit={this.handleSubmit1}>
            <div className="search-report">
              <Form.Item label="日期">
                {getFieldDecorator('date', {
                  rules: [
                    {
                      required: false,
                      message: '选择日期',
                    },
                  ],
                })(<DatePicker onChange={this.onChange} format="YYYY-MM-DD" placeholder="选择日期" />)}

              </Form.Item>
              <Button type="primary" htmlType="submit">查询</Button>
            </div>
          </Form>

这种方式在提交表单的时候,直接从state中获取日期参数值。

第二种方式:

使用moment转换日期

handleSubmit3 = e => {
    e.preventDefault();
    this.props.form.validateFieldsAndScroll((err, values) => {
      const data = moment(values.date).format('YYYY-MM-DD')
      console.log(data)
    });
  };

补充知识:moment.js可以通过 .format()方法将时间变成字符串:

我就废话不多说了,就是一行代码的事,来看看吧~

moment(moment().add(1, 'M')).format(dateFormat)

以上这篇antd-DatePicker组件获取时间值,及相关设置方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery 插件开发方法小结
Oct 23 Javascript
js onload事件不起作用示例分析
Oct 09 Javascript
Javascript中的Array数组对象详谈
Mar 03 Javascript
使用GruntJS构建Web程序之合并压缩篇
Jun 06 Javascript
jquery实现页面百叶窗走马灯式翻滚显示效果的方法
Mar 12 Javascript
vue数据双向绑定原理解析(get &amp; set)
Mar 08 Javascript
Javascript之图片的延迟加载的实例详解
Jul 24 Javascript
Vue.set() this.$set()引发的视图更新思考及注意事项
Aug 30 Javascript
Fetch超时设置与终止请求详解
May 18 Javascript
vue spa应用中的路由缓存问题与解决方案
May 31 Javascript
Layui表格监听行单双击事件讲解
Nov 14 Javascript
javascript this指向相关问题及改变方法
Nov 19 Javascript
Ant Design moment对象和字符串之间的相互转化教程
Oct 27 #Javascript
ant-design表单处理和常用方法及自定义验证操作
Oct 27 #Javascript
ant design 日期格式化的实现
Oct 27 #Javascript
基于ant design日期控件使用_仅月份的操作
Oct 27 #Javascript
ant-design-vue 时间选择器赋值默认时间的操作
Oct 27 #Javascript
ant design vue中日期选择框混合时间选择器的用法说明
Oct 27 #Javascript
vue-cli3配置favicon.ico和title的流程
Oct 27 #Javascript
You might like
php实现utf-8转unicode函数分享
2015/01/06 PHP
PHP常用处理静态操作类
2015/04/03 PHP
又拍云异步上传实例教程详解
2016/04/19 PHP
asp(javascript)全角半角转换代码 dbc2sbc
2009/08/06 Javascript
jquery插件珍藏(图片局部放大/信息提示框)
2013/01/08 Javascript
jquery实现可拖动DIV自定义保存到数据的实例
2013/11/20 Javascript
jqGrid读取选择的多行的某个属性代码
2014/05/18 Javascript
获取jqGrid中选择的行的数据
2016/11/30 Javascript
javascript中setAttribute兼容性用法分析
2016/12/12 Javascript
Javascript实现登录记住用户名和密码功能
2017/03/22 Javascript
underscore之Chaining_动力节点Java学院整理
2017/07/10 Javascript
vue2.0页面前进刷新回退不刷新的实现方法
2018/07/31 Javascript
在vue中使用express-mock搭建mock服务的方法
2018/11/07 Javascript
JavaScript偏函数与柯里化实例详解
2019/03/27 Javascript
Vue项目使用localStorage+Vuex保存用户登录信息
2019/05/27 Javascript
重学JS之显示强制类型转换详解
2019/06/30 Javascript
Vue3 中的数据侦测的实现
2019/10/09 Javascript
解决vue的过渡动画无法正常实现问题
2019/10/31 Javascript
[46:55]Ti4 冒泡赛第二轮 LGD vs C9
2014/07/14 DOTA
[01:03:27]NAVI vs EG 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
python网络编程学习笔记(一)
2014/06/09 Python
python海龟绘图实例教程
2014/07/24 Python
python不换行之end=与逗号的意思及用途
2017/11/21 Python
Python根据指定日期计算后n天,前n天是哪一天的方法
2018/05/29 Python
浅谈django rest jwt vue 跨域问题
2018/10/26 Python
Python内置random模块生成随机数的方法
2019/05/31 Python
python解释器spython使用及原理解析
2019/08/24 Python
django修改models重建数据库的操作
2020/03/31 Python
python 获取谷歌浏览器保存的密码
2021/01/06 Python
HTML5 video视频字幕的使用和制作方法
2018/05/03 HTML / CSS
马来西亚航空官方网站:Malaysia Airlines
2017/07/28 全球购物
巴西购物网站:Onofre Agora
2020/06/08 全球购物
管理心得体会
2013/12/28 职场文书
美术教师自我鉴定
2014/02/12 职场文书
保管员岗位职责
2015/02/14 职场文书
微软团队与 NASA 科学家和惠普企业(HPE)的工程师合作
2022/04/21 数码科技