antd datepicker设置开始时间和期限计算出结束时间并且去除周六日

datepicker 需要使用moment格式的时间作为value,但是在操作 此value时,包括moment.add()等方法都会直接改变datepicker的值,即使没有重新赋值。此时需要配合moment-immutable-methods使用


import { momentImmutableMethods } from 'moment-immutable-methods'

momentImmutableMethods(moment)





getFinishTime=(value)=>{

        const {getFieldValue} = this.props.form

        let i = 0

        if(typeof(value)==="number"){

            let incomingTime = getFieldValue("incomingTime")

            while(i<value){

                if(incomingTime.addImmu(1,'d').weekday()!==5&&incomingTime.addImmu(1,'d').weekday()!==6){

                    i++

                    incomingTime = incomingTime.addImmu(1,'d')

                }else{

                    incomingTime = incomingTime.addImmu(1,'d')

                }

            }

            this.setState({

                finishTime:value===16?moment():incomingTime,

                disabledFinishTime:value===16?false:true

            })

        }else if(typeof(value)==="object"){

            let deadTime = getFieldValue("deadTime")

            while(i<deadTime){

                if(value.addImmu(1,'d').weekday()!==5&&value.addImmu(1,'d').weekday()!==6){

                    i++

                    value = value.addImmu(1,'d')

                }else{

                    value = value.addImmu(1,'d')

                }

            }

            this.setState({

                finishTime:deadTime===16?moment():value,

                disabledFinishTime:deadTime===16?false:true

            })

        }

 }

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值