ant-design-mobile icon indicating copy to clipboard operation
ant-design-mobile copied to clipboard

CalendarPickerView 相关组件设置了 min 属性后 jumpTo jumpToToday 等方法不生效

Open hubingkang opened this issue 1 year ago • 4 comments

Version of antd-mobile

5.30.0

Operating system and its version

No response

Browser and its version

No response

Sandbox to reproduce

https://codesandbox.io/p/sandbox/vibrant-jasper-g7yz6n?file=%2Fapp.tsx%3A18%2C18

What happened?

CalendarPickerView 相关组件设置了 min 属性后 jumpTo jumpToToday 等方法不生效

复现链接:https://codesandbox.io/p/sandbox/vibrant-jasper-g7yz6n?file=%2Fapp.tsx%3A18%2C18

Relevant log output

No response

hubingkang avatar Jan 09 '24 09:01 hubingkang

确实是这样

day-xue avatar Jan 10 '24 06:01 day-xue

预期是怎样的,调用 jumpTo jumpToToday 方法时,第一个渲染日期月份就是 jumpTo 传参的月份/当天的日期月份,原先展示的第一个就看不到了。 如 当前日期是 2024-01,jumpTo(2025-01) 就看不到 2024-01了。 代码中有下边的逻辑:

  const minDay = useMemo(
    () => (props.min ? dayjs(props.min) : current),
    [props.min, current]
  )

如果设置了最小值,那开始渲染的日期就是从最小值日期开始,所以 jumpTo jumpToToday 等方法不生效。 #6425

Jarryxin avatar Jan 10 '24 06:01 Jarryxin

感觉可以重写一下

day-xue avatar Jan 11 '24 07:01 day-xue

很多业务场景会有最大最小值,定位到当前选中的日期,这样体验会好很多。

hubingkang avatar Jan 12 '24 08:01 hubingkang