我想知道是否可以在不保留用户语言环境的时区信息的情况下使用 AngularStrap 的日期选择器。在我们的应用程序中,我们希望处理具有到期日期的 Contract 对象。
添加或编辑合同对象时,有一个日期选择器字段用于选择日期。会发生以下情况:
- 用户选择日期(例如 2013-10-24)
- Angular 将 javascript 日期对象绑定到 ng-model 字段
- 绑定的日期对象在用户的时区(例如 GMT+3)
- 用户提交表单
- 使用 Angular 的 $http 服务将日期发送到服务器
在步骤 5 中,日期被转换为 UTC 格式。所选日期为 GMT+3 2013-10-24 午夜,但 UTC 转换将日期更改为 2013-10-23 晚上 9 点。
我们如何防止转换,或者在整个过程中使用 UTC 日期?我们不希望合同的日期根据用户的本地时区而改变。相反,我们希望日期始终为 2013-10-24,无论哪个时区。
我们当前的解决方案是对 AngularStrap 库进行小幅更改,以便日期在发送到服务器时不会更改。
如果我们可以在服务器中获取用户选择的时区,我们可以在那里进行另一次转换,但服务器没有该信息。
感谢所有想法!