Hỏi: vấn đề sử dụng moment.js đế set thời gian và chuyển đổi time zone không đúng?



  • Chào các anh!

    Em đang có 1 vấn đề thế này:
    Giờ trên server là UTC time. Còn giờ của khách hàng là GMT + 8 (singapore), sau khi insert data vào db thì nó đều set theo giờ UTC, nhưng mà khách hàng có 1 yêu cầu là nếu giờ hiện tại < 3 am thì lấy toàn bộ record của ngày hôm qua từ 12 am - 12:59 pm, ngược lại thì lấy record ngày hôm nay từ 12 am - 12:59 pm. Nên em mới phải lấy giờ hiện tại set khung giờ cho nó rồi parse ngược lại sang UTC.

    Đây là code của em:

    var date = moment().utcOffset(8); // lấy ngày giờ hiện tại của singapore.

    // set 2 khoảng giờ cho date rồi chuyển lại thành giờ UTC
    var from_time = date.hour(12).utc().format();
    var to_time = date.hour(23).utc().format();

    Kết quả là:
    from_time: 2016-07-29T04:47:54Z
    to_time: 2016-07-29T23:47:54Z

    Tại sao chỉ có giờ của from_time là đổi sang giờ của UTC được, còn giờ của to_time lại vẫn giữ nguyên.



  • This post is deleted!

Log in to reply