2014-06-19 2 views
2

클라이언트 측에서 Fullcalendar를 사용하는 NodeJS 응용 프로그램이 있습니다.Fullcalendar가 잘못된 시간과 날짜를 렌더링합니다.

내 dev 환경에서 실행될 때이 바로 동일한 응용 프로그램은 올바른 날짜와 시간으로 달력을 렌더링합니다.

제작 상자에서 실행할 때 날짜와 시간이 잘못 렌더링됩니다. 시간대 정보를 무시하는 것과 같습니다. 어떤 이상한 것은 클라이언트가 아직도 날입니다이며, 프로덕션 서버가 출력으로 당신이 볼 수있는 같은 JSON을 보내는 것을 :

[{ "ID": "53a2d4f2eec975b1095ef5c7", "제목": "PROVA" , "start": "2014-06-18T22 : 00 : 00.000Z", "end": "2014-06-19T18 : 00 : 27.000Z", "allDay": false}, { "id": "53a2d4f2eec975b1095ef5c7" , "title": "prova", "start": "2014-06-19T22 : 00 : 00.000Z", "end": "2014-06-20T18 : 00 : 27.000Z", "allDay": false} { "id": "53a2d4f2eec975b1095ef5c7", "title": "prova", "start": "2014-06-20T22 : 00 : 00.000Z", "end": "2014-06-21T18 : 00 : 27.000Z" , "allDay": false}, { "id": "53a2d4f2eec975b1095ef5c7", "title": "prova", "start": "2014-06-21T22 : 00 : 00.000Z", "end": "2014-06 -22T18 : 00 : 27.000Z ","allDay ": false}, {"id ":"53a2d4f2eec975b1095ef5c7 ","title ":"prova ","start ":"2014-06-22T22 : 00 : 00.000Z " "end": "2014-06-23T18 : 00 : 27.000Z", "allDay": false}, { "id": "53a2d4f2eec975 "2014-06-23T22 : 00 : 00Z", "end": "2014-06-24T18 : 00 : 27.000Z", "allDay": false }, { "id": "53a2d4f2eec975b1095ef5c7", "title": "prova", "start": "2014-06-24T22 : 00 : 00.000Z", "end": "2014-06-25T18 : 00 : 27.000 Z ","allDay ": false}, {"id ":"53a2d4f2eec975b1095ef5c7 ","title ":"prova ","start ":"2014-06-25T22 : 00 : 00.000Z ","end ":"2014 -06-26T18 : 00 : 27.000Z ","allDay ": false}, {"id ":"53a2d4f2eec975b1095ef5c7 ","title ":"prova ","start ":"2014-06-26T22 : 00 : 00.000Z ","end ":"2014-06-27T18 : 00 : 27.000Z ","allDay ": false}, {"id ":"53a2d4f2eec975b1095ef5c7 ","title ":"prova ","start ":"2014- 06-27T22 : 00 : 00.000Z ","end ":"2014-06-28T18 : 00 : 27.000Z ","allDay ": false}, {"id ":"53a2d4f2eec975b1095ef5c7 ","title ":"prova " , "start": "2014-06-28T22 : 00 : 00.000Z", "end": "2014-06-29T18 : 00 : 27.000Z", "allDay": false}, { "id": "53a2d4f2eec975b1095ef5c7" , "title": "prova", "start": "2014-06-29T22 : 00 : 00.000Z", "end": "2014-06-30T18 : 00 : 27.000Z", "allDay": false} { "id": "53a2fe7beec975b1095ef5c9", "title": "aaa", "start": "2014-06-18T06 : 00 : 00.000Z", "end": "2 014-06-18T11 : 00 : 00.000Z ","올 데이 "거짓}]

이 달력은 이런 식으로 초기화되고 : 예를 들어

$(document).ready(function() { 
    $('#calendar').fullCalendar({ 
     events: '/scheduler/events', 
     firstDay: 1, 
     timeFormat: 'HH:mm', 
     header: { 
     left: 'title', 
     center: '', 
     right: 'today, prev, next, month, agendaWeek' 
     }, 
     timezone: "local", 
     dayClick: function(date, jsEvent, view) { 
     }, 
     eventClick: function(event, jsEvent, view) { 
     }); 
     } 
    }); 

을, 나는 CEST에있어 시간대 및 JSON의 첫 번째 레코드는 시작 2014-06-19 00:00:00 및 종료 2014-06-19 20:00:27로 표시되어야하지만 2014-06-18 22:00:00 및 2014가 표시됩니다. -06-19 18:00:27

Fullcalendar의 timezone 옵션을 "local", "UTC", "CEST"로 설정하려고했지만 행운이 없습니다.

무엇이 잘못 되었을지 모릅니다. 감사합니다.

답변

1

올바른 방향으로 나를 가리킨 Fullcalendar의 저자에게 감사드립니다. 대답은 노드 JS가 알 수없는 이유로 OS에서 올바른 시간대를 얻지 못한다는 것입니다. 그것은 내 개발 상자 (OSX)에서 얻지 만, 프로덕션 (Linux)에서는 그렇지 않습니다.

난 그저 내 시작 스크립트에이 추가 지금은 매력처럼 작동합니다

export TZ="Europe/Rome" 
관련 문제