博客
关于我
react 中 如何给日期加条件并传值
阅读量:394 次
发布时间:2019-03-05

本文共 3081 字,大约阅读时间需要 10 分钟。

日期查询原先是这样实现的:

  {/* 日期 */}

 

    {getFieldDecorator('range-time-picker', rangeConfig)(

            

        )}

 

            {getFieldDecorator('rangtime', {

                    rules: [{

                        type: 'array',

                        message: '请选择时间范围'

                }]

                })(

                        

                           '7天': [moment(), moment().add(7, 'days')],

                           '15天': [moment(), moment().add(15, 'days')],

                           '自然月': [moment(), moment().add(1, 'month')],

                           '半年': [moment(), moment().add(183, 'days')],

                            '一年': [moment(), moment().add(366, 'days')],

                            '一季度': [moment(), moment().add(3, 'month')],

                              '两季度': [moment(), moment().add(6, 'month')],

                              '三季度': [moment(), moment().add(9, 'month')],

                              '至月底': [moment(), moment().endOf('month')],

                              '至年底': [moment(), moment().endOf('year')]

                        }}

现在需要实现默认显示最近30天的日期范围怎么办?

  {/* 日期范围默认设置 */}

 

            {getFieldDecorator('rangtime', {

                    rules: [{

                        type: 'array',

                        message: '请选择时间范围'

                }]

                })(

                              

                                           '30天': [moment(), moment().add(29, 'days')]

                                           }}

  {/* 查询处理 */}

 

{

        e.preventDefault();

        const { dispatch, form } = this.props;

        form.validateFields((err, fieldsValue) => {

            if (err) return;

            const rangeTimeValue = fieldsValue['rangtime'] ? fieldsValue['rangtime'] : [];

            if (rangeTimeValue.length > 0) {

                const values = { ...fieldsValue,

                    'starttime': '',

                 'endtime': '',

                'customercode': this.state.customerID,

                'commoditycode': fieldsValue['commoditycode'],

                'billcode': fieldsValue['billcode'],

                'searchtype': fieldsValue['searchtype'],

            };

            if (rangeTimeValue.length > 0) {

                values['starttime'] = rangeTimeValue[0].format("Y-M-d");

                values['endtime'] = rangeTimeValue[1].format("Y-M-d");

            }

            this.props.handleSetState({ formValues: values });

            dispatch({ type: 'xxxxx/fetch', payload: values });

        });

  {/* 无条件查询处理 */}

 

{

        e.preventDefault();

        const { dispatch, form } = this.props;

        form.validateFields((err, fieldsValue) => {

            if (err) return;

            const values = { ...fieldsValue,

            };

            dispatch({ type: 'xxxxx/fetch', payload: values });

        });

转载地址:http://lobzz.baihongyu.com/

你可能感兴趣的文章
python 利用pyttsx3文字转语音
查看>>
python 利用已有Ner模型进行数据清洗合并
查看>>
python 到大数据开发工程师_如何成为一个大数据开发工程师?
查看>>
python 加密解密(base64, AES)
查看>>
Python 包管理器和 Node.js
查看>>
Python 单词字母顺序不变且所有倒排
查看>>
python 启动提示IDLE's subprocess didn't make conne...
查看>>
python 命令接口_实现“[命令][操作][参数]”样式的命令行接口?
查看>>
Python 和 OpenCV.如何检测图像中的所有(填充)圆形/圆形对象?
查看>>
Python 和 RabbitMQ - 聆听来自多个渠道的消费事件的最佳方式?
查看>>
python编辑器打不开_关于命令ride.py打不开RF,而是打开pycharm编辑器问题解决思路...
查看>>
python编译exe同时支持32位_第三周:同时管理64位和32位版本的Python,并用Pyinstaller打包成exe...
查看>>
Python 和Java 哪个更适合做自动化测试?
查看>>
Python编程:掌握高级语言程序设计。从零基础到精通,收藏这篇就够了!
查看>>
python 图片转ico
查看>>
python 图片转文字、语音转文字、文字转语音保存音频并朗读
查看>>
python 在包含类似字符\x16、\x12、\x某某的数组中将以\x开头的字符找出来的方法
查看>>
Python 在并行进程之间共享字典
查看>>
Python 垃圾收集器文档
查看>>
python 基于 wordcloud + jieba + matplotlib 生成词云
查看>>