为时区设置angularjs全局配置

时间:2015-01-14 08:17:54

标签: javascript php mysql angularjs

我想知道是否有任何选项可以设置angularjs提供的时区的全局配置。我google了很多但我找不到尽可能的。在我的应用程序中,我必须将时间传递给服务器,它将存储在mysql数据库中。虽然在服务器中节省了时间,但它存储的时间不同(+8.30),我使用的是+530时区。什么他们生病处理这个问题?

我的表单作为日期时间发送到服务器,如下所示

2015-01-13T13:45:00.000Z

没有任何过滤器如何实现这一点因为我使用了许多日期时间字段,如果在每个地方使用它会很复杂

2 个答案:

答案 0 :(得分:1)

一般情况下,使用全局对象是javascript中的不良练习,但angular有一个很好的名为constant的特性。每个模块都有一个常量功能,您可以在其中存储const值,并将其注入您需要使用它的任何位置。例如,您可以遵循这种方法:

angular.module('myApp.config', [])
.constant('TIME_ZONE','value');

angular.module('myApp.controllers', ['myApp.config'])
.controller('ListCtrl', ['$scope', 'TIME_ZONE', function($scope, time_zone) {
 $scope.time = time_zone;
}]);

您可以从此链接获取有关模块功能的更多信息: https://docs.angularjs.org/api/ng/type/angular.Module

答案 1 :(得分:0)

您可以声明您的应用,然后使用constants为您的应用配置时区,您可以根据需要设置多个。

var myApp = angular.module('myApp', []);
myApp.constant("myConfig", {
    "TIMEZONE": "SomeTimezone"
});

myApp.controller('myController', ['myConfig', function(myConfig) {
    // Access your global timezone using myConfig.TIMEZONE 
}]);