解决mongodb ISODate相差8小时问题

服务端使用mongoose操作mongodb,其中Schema中的日期字段定义如下:

date:   {type:Date, default:Date.now},//操作日期

插入到mongodb中adte为:"date" : ISODate("2015-08-15T03:26:36.086Z"),

与当前时间相差8小时,客户端采用angular进行操作,在页面上展示的内容为:2015-08-15T03:26:36.086Z

现在通过使用moment.js在客户端进行处理,处理方式是定义一个过滤器filter来进行处理.

(1)安装moment.js

[email protected]:app01$ bower install --save moment

(2)定义filter

angular.module(‘angularFullstackTestApp‘)
  .controller(‘AdviceCtrl‘, function ($scope,$http,socket) {

    $scope.adviceList = [];

    /**
     * 获取意见反馈列表
     */
    $scope.getAdviceList = function(){
      $http.get(‘/api/advices‘).success(function(result) {
        $scope.adviceList = result;
      }).error(function(){
        alert("网络错误");
      });
    };

    $scope.getAdviceList();

    $scope.$on(‘$destroy‘, function () {
      socket.unsyncUpdates(‘thing‘);
    });
  }).filter(‘getLocalTimeFilter‘,function(){//使用moment.js将ISODate转换为本地时间
    return function(input){
      if(input && input.length>11){
        return moment(input).format(‘YYYY-MM-DD HH:mm:ss‘);
      }
      return input;
    };
  });

(3)使用filter

td(style="vertical-align:middle") {{a.date | getLocalTimeFilter}}

此时操作界面时间显示正常:2015-08-15 11:26:36

				
时间: 2024-10-07 17:24:10

解决mongodb ISODate相差8小时问题的相关文章

解决weblogic与系统时间相差8小时的问题

解决weblogic与系统时间相差8小时的问题 在一般情况下weblogic与系统时间是很少会出现时间差的问题,但有可能在某一特定的情况下就会出现,如使用weblogic8版本时可能会出现时差问题: 调整时差方法: 第一步: 1.找到D:\bea\jdk142_08\jre\lib\zi\Etc和D:\bea\jrockit81sp5_142_08\jre\lib\zi\Etc找到这两个文件夹里的Etc这个文件夹,里面就是时区文件, 第二步: 2.将GMT-8这个文件复制一份然后重命名为GMT来

解决tomcat中jdk1.5运行日志相差8小时问题

tomcat运行日志时间与电脑中的时间相差8小时,原因是因为jdk1.5的原因: 解决办法是在jdk运行的时候加上默认参数: Window->Preferences->Java->Installed JREs,选中一个tomcat正在运行的jre,然后点击edit, 加上运行参数:-Duser.timezone=Asia/Shanghai 如下图所示: 然后点击Finish即可.

php5.1以上版本时间戳_时间戳与日期格式转换_相差8小时 的解决方案

php5.1以上时间戳会与实际时间相差8小时,解决办法如下 1.最简单的方法就是不要用php5.1以上的版本--显然这是不可取的方法!!! 2.修改php.ini.打开php.ini查找date.timezone 去掉前面的分号= 后面加Asia/Shanghai,重启apache服务器即可--缺点就是如果程序 放到别人的服务器上,不能修改php.ini,那就奈何不得了. 3.在程序中添加时间的初始化的语句的 即:“date_default_timezone_set("Asia/Shanghai

iOS-NSDate 相差 8 小时

转载自:http://blog.csdn.net/diyagoanyhacker/article/details/7096612 NSDate存储的是世界标准时(UTC),输出时需要根据时区转换为本地时间 好像是从ios4.1开始[NSDate date];获取的是GMT时间,这个时间和北京时间相差8个小时,以下代码可以解决这个问题 //方法一 - (void)tDate { NSDate *date = [NSDatedate]; NSTimeZone *zone = [NSTimeZones

php 时间获取相差8小时

php 时间获取相差8小时 by 伍雪颖 date_default_timezone_set('PRC'); $timeStr = date("Y-m-d H:i:s",time()); 服务器加上这句话刚好可以解决AFNetWorking解析json的问题 Error Domain=NSCocoaErrorDomain Code=3840 "The operation couldn't be completed. (Cocoa error 3840.)" (JSO

告警日志时间与系统时间相差8小时

系统默认的log_timestamps为UTC,与linux系统时间相差8小时 解决方法: SET GLOBAL log_timestamps = SYSTEM;(立即生效,重启mysql服务,失效) 永久生效方法,在/etc/my.cnf中添加 log_timestamps=system 原文地址:https://www.cnblogs.com/tonnytangy/p/11966344.html

Manjaro 与 Windows 双系统时间相差8小时

Manjaro 与 Windows 双系统时间相差8小时 产生原因: Windows 将本地硬件时间作为设定时区(如 UTC+8)的区时,而 Linux 默认将其作为 UTC 时间. 解决方式: 让 Manjaro 不要将其作为 UTC 时间: sudo timedatectl set-local-rtc 1 原文地址:https://www.cnblogs.com/skylee03/p/12230511.html

解决mongodb服务启动 Permission denied:exception in ...

解决mongodb服务启动报错:exception in initAndListen: 98 Unable to create/open lock file: /var/lib/mongodb/mongod.lock errno:13 Permission denied is a mongod instance already running? mongodb服务启动不成功,通过查看日志文件,命令: [Shell] 纯文本查看 复制代码 ? 1 sudo gedit /var/log/mongo

php中时间相差8小时的解决办法

引用:http://www.111cn.net/phper/31/42398.htm 在php中使用date('Y-m-d H:i:s');得出的结果会相差8个小时,原来是时区的问题 解决办法: 1.在php.ini里面写: date.timezone = PRC 2.在php代码中写: date_default_timezone_set(\'Asia/Chongqing\'); 这样就可以了. php5.0后都要自己设置时区,要么修改php.ini的设置,要么在代码里修改. 3.系统初始化时,