angularjs dateTimePicker 如何设置为非UTC 时间?

angularjs dateTimePicker how to NOT UTC the time?

我正在为我的 angularjs 应用程序使用 this dateTimePicker,我遇到的问题是用户输入的内容时间被转换为不同的、基于 UTC 的时间,相差很多小时(下面的屏幕截图,组件和旁边的文本都使用相同的 ng-model)。

有没有办法强制此组件完全按照用户输入的方式生成输出?就像在这种情况下,我想从中得到“2016-05-24 12:00 AM”!

使用日期过滤器并将日期值的时区留空,将时区留空将使用浏览器默认时区:

{{date | date: 'yyyy-MM-dd hh:mm:ss Z' : ''}}

参考:https://docs.angularjs.org/api/ng/filter/date

您可以使用此代码:

var d = new Date($scope.date);
var day = d.getDate();
var mon = d.getMonth()+1;
var year = d.getFullYear();
var hour = d.getHours();
var min = d.getMinutes();

if(day <10) day = "0"+day;
if(mon <10) mon = "0"+mon;

$scope.newDate = day+"-"+mon+"-"+year+" "+ hour + ":"+ min;
alert($scope.newDate);

要将此 24 小时制转换为 12 小时制,请按照这两个问题的答案进行操作。

Converting 24 hour time to 12 hour time w/ AM & PM using Javascript

Javascript: convert 24-hour time-of-day string to 12-hour time with AM/PM and no timezone