0

我想知道是否有人可以在这里为我提供帮助。

我正在使用 JSON 文件使用 AngularJS 创建时间线。我已经能够弄清楚如何使用 HTML 绑定 ng-repeat 循环输出日期,但我需要编辑日期输出;重新格式化后,“2013-01-01”变为“2012 年 12 月 31 日”。

我一直在努力弄清楚如何在控制器中提取日期值,以便我可以将它应用到一个函数中,该函数将该值转换为正确的日期——通过在日期上添加另一天。

非常感谢你!我希望这是有道理的。

4

2 回答 2

2

Javascript 自动本地化日期。角度过滤器date需要一个时区,如果没有提供时区,则假定为 UTC。问题是,一旦您的无时区(因此假定为 UTC)字符串本地化,它就不再是 2013-01-01,而是比您的时区少几个小时。在太平洋标准时间,这是-8。所以日期似乎是前一天。

来自服务器的数据应该有一个与之关联的时区——这只是最佳实践。没有它,假设 UTC 是一个不错的选择。毕竟,需要一些标准。

这是一个 Plunker,展示了一些如何工作的示例,如果您需要它们:http ://plnkr.co/edit/Jhwnkj?p=preview

于 2013-01-07T05:12:41.473 回答
0

在您的视图中使用 Angular 日期过滤器。您不必更改控制器中的任何值。这是给你的例子 http://plnkr.co/edit/iqIpW5uADTRVFycDxdBa

阅读 AngularJS 日期过滤器。 http://docs.angularjs.org/api/ng.filter:date

于 2013-01-06T23:06:56.147 回答