【问题标题】:Change the way AngularJS serializes Date改变 AngularJS 序列化 Date 的方式
【发布时间】:2016-03-03 19:11:29
【问题描述】:

我想在发出 $http 请求时序列化没有 UTC/'zulu'(标准行为)的 javascript 日期。默认情况下,Date(2015,0,1,12,0,0) 将在时区 -0300 中生成 2015-1-1T15:00:00z,但我想获得 '2015-1-1T12:00:00'。

一种方法是更改​​ JSON 使用的 Date.prototype.toISOString 和 AngularJS 使用的 Date.prototype.toISOString。有没有更好的方法来更改 $http 调用中的日期,例如以某种方式拦截 $httpProvider

【问题讨论】:

  • 最终目标是在模板中呈现字符串以使您看不到时区信息吗?

标签: angularjs json date


【解决方案1】:

1

您可以配置 $httpProvider (https://docs.angularjs.org/api/ng/service/$http#default-transformations),但可能您还应该为响应设置逆变换。它适用于所有请求。

2

您可以在使用自定义 REPLACER 函数 (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify) 将数据传递给 $http 服务调用之前对其进行序列化。

【讨论】:

    猜你喜欢
    • 2015-10-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-20
    • 2018-05-06
    • 1970-01-01
    相关资源
    最近更新 更多