antd RangePicker的时间范围设置问题

有一个这样的日期时间选择需求,进入页面的时候默认显示当前日期的0点整到当前小时,比如现在是10点,那显示的日期时间就是2021-04-29 00 - 2021-04-29 10,然后当选择某一天时,变成2021-04-01 00 - 2021-04-01 23这样,然后还可以选择其它时间点。

也就是说默认显示当天的零点到当前时间,然后选择某一天时,时间点默认变成0点到23点,如果需要设置其它时间点的时候再去选择image.png

<Form.Item label={"查询时间:"}>
    {getFieldDecorator("queryTime", {
      initialValue: [moment().startOf('d'), moment(currentDate, "YYYY-MM-DD HH:00")],
      rules: [
        {
          required: true,
          message: "请选择查询时间"
        }
      ]
    })(
      <RangePicker
        showTime
        format="YYYY-MM-DD HH:00"
        placeholder={['开始时间', '结束时间']}
        ranges={{
          '今天': [moment().startOf('d'), moment().endOf('d')],
          '这个月': [moment().startOf('month'), moment().endOf('month')],
        }}
      //onChange={onChange}
      />
    )}
  </Form.Item>

现在的问题就是设置了initailValue为0点到当前时间之后,再选择其它日期,还是默认的0点到当前时间,请问怎么变成0点到23点然后还可以选择其它时间点呢

阅读 9.5k
1 个回答

你得写程序告诉他,因为RangePicker也不知道你的业务逻辑,你可以在onChange事件里写判断来设置时间

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进