繁体   English   中英

AngularJS datetime-picker时区

[英]Angularjs datetime-picker timezone

我在模态中使用angular-material-datetimepicker输入日期和时间。 但是,angular在json中发送所有数据服务器端,并将时间更改为UTC。 在重新加载客户端时,显示了我不需要的UTC时间。 如何使客户显示我的本地时间(在我的情况下为GMT +2)? 如何仅操作json字符串的日期部分? 我在其他类似的SO q和论坛上看到了令人困惑的解决方案。 谢谢。

在模态html上

        <div class="time">
           <md-input-container class="md-input-has-placeholder start_time">
              <label>Start Date/Time</label>
              <input mdc-datetime-picker="" date="true" time="true" type="text" id="datetime" placeholder="Start" min-date="date" format="DD/MM/YYYY hh:mm" ng-model="Project.StartAt" class=" md-input">
           </md-input-container>

           <md-input-container class="md-input-has-placeholder endtime">
              <label>End Date/Time</label>
              <input mdc-datetime-picker="" date="true" time="true" type="text" id="datetime" placeholder="End" min-date="date" format="DD/MM/YYYY hh:mm" ng-model="Project.EndAt" class=" md-input">
           </md-input-container>
        </div>

$scope.editProject = function(data) {
        $scope.showSelected = true;
        $scope.SelectedProject = data;
        var fromDate = moment(data.start).format('DD/MM/YYYY LT');
        var endDate  = moment(data.end).format('DD/MM/YYYY LT');

        $scope.Project = { 
            ProjectID : data.projectID, 
            Client : data.client,
            Title : data.title,
            Description: data.description,
            Employees: data.employees,
            StartAt : fromDate,
            EndAt : endDate,
            IsFullDay : false
        }
        $scope.ShowModal()
    },

$scope.ShowModal = function(){
        $scope.option = {
            templateUrl: 'modalContent.html',
            controller: 'modalController',
            controllerAs: '$ctrl',
            backdrop: 'static',
            resolve: {
                Project : function () { 
                    return $scope.Project;
                },
                SelectedProject : function () { 
                    return $scope.SelectedProject;
                },
                projects: function () {
                    return $ctrl.projects;
                }
            }
        };

    var modal = $uibModal.open($scope.option);
        modal.result.then(function (data) { 

           $scope.Project = data.project; 
            switch (data.operation){
               case 'Save':
                    //Save here
                    $http({
                        method: 'POST',
                        url: '/',
                        data: $scope.Project
                    }).then(function(response){
                        if(response.data.status){                                
                            $scope.projects.push(Project);
                        }
                    })
                    break;

您可以像这样应用过滤器:

$scope.yourDate= $filter('date')(new Date($scope.yourDate), 'yyyy-MM-dd'); // Try different format as per your requirement

不要忘记注入依赖项$ filter。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM