2017-06-13 30 views
5

hoạt động chọn góc cạnh cho giờ địa phương của tôi. Để kiểm tra Thời gian toàn cầu, tôi đã thay đổi múi giờ thành "America/Denver". Bây giờ ngày đã chọn được thực hiện một ngày trước ngày hôm nay (đã qua ngày phương thức), do đó, nó áp dụng lớp "pickadate-active" cho ngày hôm qua.
Tôi đã thử chuyển ngày phương thức với múi giờ địa phương và cũng có múi giờ UTC. Tôi không biết tại sao dateHelper.parseDate gọi lại bằng cách tước giá trị Timezone trước đó đã trôi qua, giờ đây sự hiểu biết của tôi là $ locale đang chuyển đổi ngày bị tước giả sử là ngày UTC thành ngày địa phương. Do đó, là GMT-06: 00, ngày được chọn đến trước một ngày.
múi giờ góc cạnh - được chọnNgày là một ngày trước ngày theo phương thức cho các múi giờ khác

HTML DIV - <div pickadate ng-model="vm.date" ng-model-options="{ debounce: 0 }" header="true" select="true" date-highlight-list="vm.dateList" ></div>

Controller - vm.date = moment().tz(timeZoneName).format();

ai đó có thể đề xuất một cách để xử lý các múi giờ khác nhau với góc-pickadate ?? Cảm ơn !
URL chỉ thị GIT - https://github.com/restorando/angular-pickadate

+0

phải đối mặt với cùng một vấn đề, đã u tìm thấy bất kỳ giải pháp – Pratswinz

+0

này câu hỏi không thuộc về góc cạnh. sử dụng angularjs thay vì – CruelEngine

+0

ya đã sửa chữa nó, cảm ơn – Kishor

Trả lời

3

Hàm parseDate đã cho đối tượng ngày theo múi giờ GMT, vì vậy, tôi đã loại bỏ điều kiện này đã trả về ngày GMT trực tiếp cho các chuỗi ngày tháng được truyền theo múi giờ.

if (angular.isDate(dateString) || angular.isDate(new Date(dateString))) { 
new Date(dateString); } 

Bây giờ nó đi đến tiếp theo nếu khối để định dạng ngày với regex và thêm điều kiện này có mặt để xử lý chuỗi ngày và các đối tượng ngày -

if(typeof dateString == 'object') { 
    dateString = (dateString['_d'])? dateString['_d']: dateString['_i']; // being private (_d, _i) should be avoided but only way in mine case 
    if(typeof dateString == 'object') // returns Object by dateString['_d'] else string 
    dateString = dateString.getDate() +'-'+ dateString.getMonth() +'-' +dateString.getFullYear(); 
} 

dateParts = dateString.split(separator); // separator was "-" every time so making dateString with "-" in case it was object 
+0

cảm ơn, nó đã làm việc cho tôi – Pratswinz

Các vấn đề liên quan