Tencent / tdesign-vue

A Vue.js UI components lib for TDesign.
https://tdesign.tencent.com/vue
MIT License
904 stars 349 forks source link

DatePicker 日期选择器存在范围不准问题 #2359

Open Caoxiongk opened 1 year ago

Caoxiongk commented 1 year ago

tdesign-vue 版本

DatePicker 日期选择器存在范围不准问题

重现链接

No response

重现步骤

DatePicker 日期选择器存在范围不准问题,重现可以看看月范围这个组件,当选择2022-03到2022-04的时候,通过change方法,取到context里面的值,进行YYYY-MM-DD转换,结果转换成了2022-03-01到2022-4-01,实际上应该是2022-03-01到2022-4-030才对,这才是一个范围来着,所有涉及到范围都有这个问题,请重视

期望结果

当选择2022-03到2022-04的时候,通过change方法,取到context里面的值,进行YYYY-MM-DD转换,应该是开始时间的月初和结束时间的月末

实际结果

No response

框架版本

vue2(1.2.7)

浏览器版本

No response

系统版本

No response

Node版本

No response

补充说明

No response

github-actions[bot] commented 1 year ago

👋 @Caoxiongk,感谢给 TDesign 提出了 issue。 请根据 issue 模版确保背景信息的完善,我们将调查并尽快回复你。

honkinglin commented 1 year ago

关于区间选择器返回值的结束时间是否应该是 “当年最后一天”/“当季度最后一天”/“当月最后一天”/“当周最后一天” 这个问题,本身就没有标准,使用非日期选择的用户本身就应该更关注 “年”/”季度“/“月“/‘’周” 的值的准确性 或许有的业务希望是最后一天但也会有别的用户希望是第一天,这些都不应该属于 年/月/季度/周/ 选择器该处理的,如果一定要转化成具体日期那也应该由业务自行决定是最后一天或者是第一天甚至是某一天的具体几分几秒 建议使用 dayjs 转化value值到期望的时间值,或者用返回值中的对象二次调整到需要的值

Ericleungs commented 1 year ago

感觉有点像是数字精度的问题,本来就是保留两位小数,要求小数三位以后的当然是不准的。如果要在组件中实现开始日、结束日的规则,或许会令组件变得复杂+功能冗余,将这些放到具体的业务逻辑中处理是不是会更好一些