-
Notifications
You must be signed in to change notification settings - Fork 362
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[DatePicker] 年周的计算逻辑不按ISO国际标准 #2053
Comments
👋 @xzj5426,感谢给 TDesign 提出了 issue。 |
这是一个好问题,其实 datepicker 组件底层使用的日期格式化库是dayjs,dayjs也有提供iso标准的周格式化插件,所以理论上只要有多少个格式化标准就会有多少种计算方式。 |
我试过改源码转成iso标准的格式化,显示的年周数在以周一为firstDayOfWeek的时候显示是正确的,但是在firstDayOfWeek是7的时候,显示就不正确了。而且就是pannel上显示正确了,选择后,重新弹出pannel后,显示已选中的时间段却是错误的。 |
或许可以参考arco.design,只不过他只支持vue3版本的 |
看了下arco的代码,他也没有使用 iso 标准来处理周数,不太清楚你现在遇到的困境是什么为什么一定要组件展示使用 iso 标准? |
arco 默认是周日开始展示日期的,这点会影响周数的计算,他的源码中没有使用 iso 相关的格式化函数,也是默认的周计算方式 https://stackblitz.com/edit/react-q3tf6x?file=src%2Fdemo.jsx |
如果你期望得到跟 arco 一样的周展示效果可以更改 |
|
很有意思的一个问题,arco 也并不是用的 iso 标准,但是他们设置了地区所以展示正确了,这周版本会修复下这个问题 |
tdesign-vue 版本
1.0.5
重现链接
No response
重现步骤
datePicker和dateRangePicker在type='week',类型为周选择器的时候,那个周数(也就是第几周),不是按照ISO国际标准来的,而是普通的按照每年的1号算作第一周来计算的。希望提供个属性,支持用户自行选择,是否按照ISO标准来计算年周数,谢谢
期望结果
希望提供个属性,支持用户自行选择,是否按照ISO标准来计算年周数
实际结果
只能按照每年的1号算作第一周来计算
框架版本
vue2.6
浏览器版本
No response
系统版本
No response
Node版本
No response
补充说明
No response
The text was updated successfully, but these errors were encountered: