Angularjs日期过滤器将时间毫秒转换为UTC不起作用
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Angularjs日期过滤器将时间毫秒转换为UTC不起作用相关的知识,希望对你有一定的参考价值。
我试图将时区传递给角度js日期过滤器:
var _date = $filter('date')(input, 'yyyy/MM/dd HH:mm:ss', 'UTC');
其中“输入”是以毫秒为单位的时间。在这种情况下,返回的日期时间字符串始终在本地时区。
请参阅以下小提琴示例:http://jsfiddle.net/Cp73s/6312/
请告诉我这个小提琴有什么问题?角度版本是1.5。提前致谢。
答案
无法转换使用
var _date = $filter('date')(input, 'yyyy/MM/dd HH:mm:ss', 'UTC');
在小提琴中编辑其他方式,
在过滤器中添加了utc转换功能,
myapp.filter('dateFormat', function($filter)
{
var toUTCDate = function(date){
var _utc = new Date(date.getUTCFullYear(), date.getUTCMonth(), date.getUTCDate(), date.getUTCHours(), date.getUTCMinutes(), date.getUTCSeconds());
return _utc;
};
var millisToUTCDate = function(millis){
return toUTCDate(new Date(millis));
};
return function(input)
{
if(input == null){ return ""; }
var _date = $filter('date')(millisToUTCDate(input), "yyyy/MM/dd HH:mm:ss");
return _date.toUpperCase();
};
});
检查这个更新的小提琴
http://jsfiddle.net/Cp73s/6312/
以上是关于Angularjs日期过滤器将时间毫秒转换为UTC不起作用的主要内容,如果未能解决你的问题,请参考以下文章