Yueyanc
Yueyanc
@zombieJ 这块这样实现可行吗,可行的话我添加文档和修复用例报错
@zombieJ 帮忙review一下呢
> 感觉这个 api 有点奇怪。是不是打开弹窗之后最好可以直接定位到选择的日期,而不是再调用个 api 来滚动到相应的位置? 弹窗打开的时候内部调用了这个api 不需要再手动调用了
> > > 感觉这个 api 有点奇怪。是不是打开弹窗之后最好可以直接定位到选择的日期,而不是再调用个 api 来滚动到相应的位置? > > > > > > 弹窗打开的时候内部调用了这个api 不需要再手动调用了 > >  那这里就可以不用暴露了吧? 这里是因为考虑到可能有用户想要定位到其他日期才添加上去的。需要去掉吗
> > > 感觉这个 api 有点奇怪。是不是打开弹窗之后最好可以直接定位到选择的日期,而不是再调用个 api 来滚动到相应的位置? > > > > > > 弹窗打开的时候内部调用了这个api 不需要再手动调用了 > >  那这里就可以不用暴露了吧? scrollTo这个api是通过ref传出来的,如果文档里面不写,但是用户在ref里面能看见这个api,会不会有疑惑
> 这个实现有些缺陷,理由如下: > > 1. scrollTo后只是将要展示的日期显示到屏幕中间(调用 `scrollIntoView({ block: 'center' })`),展示的截断区域比较奇怪,如下,最好是将当前月完整显示 > >  > > 2. `data-date`加cell日期的方式只改了默认cell显示的属性,`renderDate`自定义日期渲染的情况未处理 > > 3. 当设置了min后,默认未从defaultValue/value设置的日期开始渲染,当 visible 为 true 时,calendarRef.current不能立刻取到,需要加`setImmediate`获取 calendarRef > > > >...
@zombieJ 还有就是抽屉出现时,默认在min处,而不是当前选中项,如果我的min设置到一年前,我每次都需要手动去滚动
> > @angleneo @cheng-xiaofeng @liqiuqiui 你们在使用的时候,会期望这个组件可以无限滚动么?现在其实是限制了 6 个月的选择。 > > > @angleneo @cheng-xiaofeng @liqiuqiui 你们在使用的时候,会期望这个组件可以无限滚动么?现在其实是限制了 6 个月的选择。 > > 这是默认的min,max限制没啥问题,问题出在每次打开这个picker显示的是min所在的日期,而不是当前选中项所在的日期 #6521
暂时可以这样: ```javascript useEffect(() => { if (visible) { const el = document.getElementById(dayjs(saveDate).format('YYYY-MM-DD')) setTimeout(() => { el?.scrollIntoView({ behavior: 'smooth', block: 'center' }) }, 100) } }, [visible]) { return {date.getDate()} }}...