Fabric / Fluent UI Datepicker的星期几与日历数字日期未对齐

问题描述

Fabric / Fluent UI Datepicker日历数字日期与一周中的实际日期不一致。屏幕截图演示:

img_datePicker

^可以看到,突出显示的今天日期标记为2020年9月17日,在日历的“星期五”列下,但这显然是错误的,因为2020年9月17日是星期四

我已经考虑到这可能是由于实际Date()对象中的错误所致,但这没有任何意义,因为那只会导致日期错误,即日历数字日期与日期之间的对齐方式一周永远都不会像这样错位,因为无论如何这都是错误的。不管您在Datepicker中输入什么Date()对象,2020年9月17日始终是星期四,而不是星期五。

这是Fabric / Fluent UI Datepicker的错误吗?还有其他人会发生这种情况吗,还是我可能忽略了某些事情?

非常感谢。

解决方法

已解决

问题是Fluent UI按特定顺序接受shortDay字符串:

CREATE TABLE customer ( customer_id INT NOT NULL AUTO_INCREMENT,customer_key VARCHAR(100) NOT NULL UNIQUE,first_name VARCHAR(100) NOT NULL,last_name VARCHAR(100) DEFAULT NULL,email VARCHAR(150) NOT NULL UNIQUE,date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,PRIMARY KEY (customer_id),UNIQUE KEY (customer_key) ); CREATE TABLE truck ( truck_id INT NOT NULL AUTO_INCREMENT,truck_key VARCHAR(100) NOT NULL UNIQUE,customer_id INT NOT NULL,# should this be customer_key truck_type VARCHAR(100) NOT NULL,PRIMARY KEY (truck_id),UNIQUE KEY (truck_key),FOREIGN KEY (customer_id) # should this be customer_key REFERENCES customer(customer_id) # should this be customer_key );

(请参阅文档:https://developer.microsoft.com/en-us/fluentui#/controls/web/datepicker

但是因为在我的应用中我需要针对不同的语言环境进行本地化,所以我正在使用Luxon来生成日期字符串,如下所示:

shortDays: ['S','M','T','W','F','S']

import { Info } from 'luxon';

..并且输出为

shortDays: Info.weekdays('narrow',{locale: i18n.locale})

...导致字符串移位X_X(Fluent UI Datepicker读取“ M”为星期日,“ T”为星期一,等等)

因此,要解决此问题,我在返回HTML之前就将这一行放入了render方法:

shortDays: ['M','S','S']

(是的,我知道,React中的类组件已经过时,但是我最初并未编写此代码,我只是继承了它)