我需要在与服务进入时相同的时区显示日期。但角度日期过滤器将日期转换为本地时区。有没有办法避免在当地时区转换。 我的意见是2014-12-11T05:21:22.323-05:00 所需输出 - 12/11/2014 05:21:22 PM(未转换为当地时区)
提前致谢。
答案 0 :(得分:1)
您可以为此创建自定义过滤器,只需转换不带时区的所需日期,例如:
myApp.filter('ignoreTimeZone', function(){
return function(val) {
var newDate = new Date(val.replace('T', ' ').slice(0, -6));
return newDate;
};
});
检查这个小提琴: http://jsfiddle.net/ghxd6nom/
您也可以使用库,例如moment.js
答案 1 :(得分:0)
Angular提供服务' $ filter'。我们可以在控制器上注入此服务。
在此服务的帮助下,我们可以格式化日期。
var dateFrom = $filter('date')(new Date(), "MM/dd/yyyy");
通过这种方式,我们可以使用或不使用Timezone格式化日期。
返回值是字符串,我们可以将字符串转换为Backend上的DateTime。
另一种方法是使用库moment.js。 该库提供了更好的转换/格式化日期的方法。
检查此blog,它提供角度日期/时间过滤&格式化。
答案 2 :(得分:0)