我正在尝试使用d3创建一个在每0、6am,正午和6pm有一条垂直网格线(从X轴出来)的图形。我是通过手动计算一下momentjs中的刻度值来实现的。
我可以轻松计算一天的开始时间 firstPoint = momenttz(startDate).startOf('day')
然后循环添加6个小时。
for (let i = 0; i <= days * 24; i += 6) {
hourTickValues.push(firstPoint.clone().add(i, 'hours'));
}
当进入或退出夏令时时,我想将行保持在当地时间上午6点,正午和下午6点。这将意味着每年两次网格间距会有所不同,因为从凌晨12点到凌晨6点之间只有5个小时进入DST,而出来时只有7个小时。
Momentjs的docs明确指出,将 hours 添加到某个时间不会调整夏令时,但是会添加 days 。我还发现添加小数天是行不通的,它总是四舍五入为整数。
那么,如何才能根据DST调整时钟每6小时可靠地创建一个(momentjs)日期对象?
答案 0 :(得分:0)
我通过在创建后每小时手动设置对象来解决此问题。
<httpProtocol>
<customHeaders>
<add name="Access-Control-Allow-Origin" value="*" />
<add name="Access-Control-Max-Age" value="1728000" />
<add name="Access-Control-Allow-Headers" value="Origin, X-Requested-With, Content-Type, Accept, Authorization, Pragma, Cache-Control" />
<add name="Access-Control-Allow-Methods" value="GET, POST, PUT, DELETE, OPTIONS" />
</customHeaders>
</httpProtocol>