如何更正属于夏令时的未来日期的时区偏移
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 下午转移到 12:30 下午。
有什么办法可以防止这种转变吗?我的应用程序在 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();
否则尝试使用 moment in app angularjs
https://raw.githubusercontent.com/gdi2290/angular-momentjs/master/angular-momentjs.js
加载脚本
<script type="text/javascript" src="./angular-momentjs.js"></script>
在您的应用模块和控制器中注入依赖项
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');
});
我正在尝试安排在 2021 年 5 月 2 日 1:30 下午举行的活动,该活动属于中部夏令时,我计划在今天 25-FEB-2021 举行,这是中部标准时间。但时间 1:30 下午转移到 12:30 下午。
有什么办法可以防止这种转变吗?我的应用程序在 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();
否则尝试使用 moment in app angularjs https://raw.githubusercontent.com/gdi2290/angular-momentjs/master/angular-momentjs.js
加载脚本
<script type="text/javascript" src="./angular-momentjs.js"></script>
在您的应用模块和控制器中注入依赖项
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');
});