服務端使用mongoose操做mongodb,其中Schema中的日期字段定義以下:mongodb
date: {type:Date, default:Date.now},//操做日期
插入到mongodb中adte爲:"date" : ISODate("2015-08-15T03:26:36.086Z"),api
與當前時間相差8小時,客戶端採用angular進行操做,在頁面上展現的內容爲:2015-08-15T03:26:36.086Z網絡
如今經過使用moment.js在客戶端進行處理,處理方式是定義一個過濾器filter來進行處理.app
(1)安裝moment.jssocket
y@y:app01$ bower install --save momentmongoose
(2)定義filterspa
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)使用filtercode
td(style="vertical-align:middle") {{a.date | getLocalTimeFilter}}
此時操做界面時間顯示正常:2015-08-15 11:26:36orm