簡體   English   中英

md-datepicker中的值的日期格式

[英]Date format of value from md-datepicker

如何以特定格式格式化md-datepicker的模型變量。 我嘗試了$mdDateLocaleProvider配置,但是它只是格式化了日期選擇器的顯示值,而不是模型值。 請查看此代碼或以下代碼:

HTML:

<div ng-app="MyApp" ng-controller="AppCtrl">
  <md-content>
    <md-datepicker ng-model="myDate" md-placeholder="Enter date"></md-datepicker>
  </md-content>
  <p>Date not formatted:</p>
  {{myDate}}
</div>

JS:

angular.module('MyApp')
    .controller('AppCtrl', function($scope) {
      $scope.myDate = new Date();
    })

.config(function($mdDateLocaleProvider) {
  $mdDateLocaleProvider.formatDate = function(date) {
    return moment(date).format('YYYY-MM-DD');
  };
});

您應該使用角度“日期”過濾器

{{myDate | date:'yyyy-MM-dd'}}

有關更多格式和其他信息,請參見: https : //docs.angularjs.org/api/ng/filter/date

var dateFormat = function(date) {

    var date = date.getDate();
    var month = date.getMonth();
    var year = date.getFullYear();
    var formattedDate = (date < 10 ?  ('0' + date) : date) + '/' + (month < 10 ?  ('0' + month) : month) + '/' + year;
}

要么

return date.getDate() + "/" +date.getMonth()+1 + "/" + date.getFullYear();

將給您01/08/2016。 (您需要+1 getMonth(),因為一月是0)。 這是你想要的?

編輯:功能

模型對象始終是一個javascript日期對象,您只能在渲染它時更改表示形式(例如,帶有當前時刻或已經提到的角度日期過濾器)。

也許您應該閱讀JavaScript和JSON中的日期格式“正確的” JSON日期格式

但是,您可以在將日期對象發送到服務器/后端之前對其進行轉換。 如果您將REST與$resource$http使用,則可以使用諸如angular-http-transform-date之類的方法 ,也可以通過向$httpProvider添加請求轉換器來自己$httpProvider 有一篇博客文章顯示了如何進行響應,但是相同的機制適用於請求。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM