繁体   English   中英

如何更正属于夏令时的未来日期的时区偏移

[英]How to correct Timezone offset for the future dates that falls under Daylight Saving Time

我正在尝试在中部夏令时间 2021 年 5 月 2 日下午 1:30 安排一个活动,我将其安排在今天 25-FEB-2021,这是中部标准时间。 但是时间 1:30 PM 变成了 12:30 PM。

有什么办法可以防止这种转变? 我的应用程序在 angular Js 中并使用 Bootstrap-angular 日期时间选择器

您可以使用 moment-timezone https://github.com/moment/moment-timezone您可以根据时区在您的日期添加偏移量,法国的 ici +01:00。

<script type="text/javascript" src="./moment-timezone-with-data.js"></script>

let offsetFrance = moment().tz("Europe/Paris").format('Z'); //+01:00
let eventWithOffset = moment().format('YYYY-MM-DDTHH:mm:ss[' + offsetFrance + ']');
let eventGmt = moment.tz(eventWithOffset, 'Europe/Paris').toISOString();

否则尝试在应用程序 angularjs https://raw.githubusercontent.com/gdi2290/angular-momentjs/master/angular-momentjs.js

加载脚本

<script type="text/javascript" src="./angular-momentjs.js"></script>

在您的应用程序模块和 controller 中注入依赖项

var app = angular.module('myApp', ['angular-momentjs']);

app.controller('myCtrl', function($scope, $moment) {
  let now = $moment().toISOString();
  let myEvent = $moment('02/05/2021 13:30', 'DD/MM/YYYY HH:mm').toISOString();

  if($moment(now).isAfter(myEvent)) alert('Time to event');
  else alert('ok');
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM