2014-09-01 1 views

답변

0

JS가 원래 날짜를 처리하는 방식 때문입니다. AngularUI 팀은 문서에서 이것을 언급합니다.

여기에 하나 개의 솔루션입니다 : Angular-UI One day is subtracted from date in ui-date

+0

이 답변은 angular-ui에 관한 것이지만 질문은 angle-bootstrap datepicker에 관한 것입니다. – user1338062

+0

질문의 링크를 클릭하면 Angular UI Datepicker를 사용하고 있음을 알 수 있습니다. – Antiga

1
내 솔루션 뷰와 모델 값의 포맷도 마이너스 1 문제를 해결하고하는 지시어를 사용하는 것입니다

:에서 솔루션을 필요로하는 사람들을위한

app.directive('ngBootstrapFix',['$filter', function($filter) { 
    return { 
    require: 'ngModel', 
    priority: 1, 
    link: function($scope, $element, $attrs, ngModelCtrl) { 
     ngModelCtrl.$parsers.push(function(viewValue) { 
     viewValue = $filter('date')(viewValue, 'yyyy-MM-dd'); 
     return viewValue; 
     }); 
     ngModelCtrl.$render = function() { 
     var val = $filter('date')(ngModelCtrl.$viewValue, 'dd/MM/yyyy'); 
     $element.val(val); 
     }; 
    } 
    }; 
}]); 
+0

나를 위해이 didnt 일, 나는 실행되고있는 필터를 볼 수 있지만 전날 선택에 변화는 없다. – ebt

+0

그래도 필터는 실행 중이지만 변경은 필요하지 않습니다. – ericsicons

9

.NET Web API 세계에서이 라인이 잘 돌아갔습니다.

GlobalConfiguration.Configuration.Formatters.JsonFormatter.SerializerSettings.DateTimeZoneHandling = Newtonsoft.Json.DateTimeZoneHandling.Local; 

잘못된 시간대로 시간이 초과 된 JsonFormatter 때문이었습니다.

+0

웹 API2를 사용하는 것은 각도 측면에서 동일한 문제가 있었지만 의사의 지시에 따라 결정되었습니다. 감사합니다 –

+0

이것은 정확히 내가 찾고 있던 것입니다. –

+0

ur이 웹 API를 백엔드로 사용하는 경우 가장 좋은 대답입니다.이 @john lee을 공유해 주셔서 감사합니다. –

0

방금 ​​date date()로 ngModel을 초기화했으며 날짜 선택기로 날짜를 변경 한 후에도 날짜가 올바르게 설정되었습니다.