2017-01-05 2 views
2

Вот точная проблема я столкнулся: https://codepen.io/anon/pen/QdwOLr?editors=1010 Ниже HTML-файл:мкр-DatePicker каландр не отображая

<body layout="row" ng-app="myApp" ng-controller="myCtrl" ng-cloak> 
<md-datepicker 
    ng-model="myDate" 
    md-max-date="todaysDate" 
    md-placeholder="Enter date"> 
</md-datepicker> 
</body> 

И это файл JS:

angular.module('myApp',['ngMaterial']).config(['$mdDateLocaleProvider', 
function($mdDateLocaleProvider) { 
    $mdDateLocaleProvider.formatDate = function(date) { 
    return moment(date).format('DD/MMM/YYYY'); 
    }; 
} 
]).controller('myCtrl', ['$scope', function($scope) { 
    $scope.todaysDate = new Date(); 
}]); 

Проблема: при нажатии кнопки datepicker даты не отображаются. Однако после прокрутки даты отображаются, но идут к далекой дате.

Дополнительная информация: Версии -

  1. угловой = 1.6.0
  2. угловой материал = 1.1.1
  3. момент = 2.17.1

ответ

2

Я играл вокруг с вашим codepen, и если вы используете Angular версии 1.5 (и aria/animate to 1.5.1), то <md-datepicker> показывает даты.

Если вы посмотрите на https://github.com/angular/material/issues/10111, тогда вы увидите, что угловой материал 1.1.1 не совместим с угловым 1.6.

+1

Большое спасибо за быстрый ответ. Рассматривая ссылку, предоставленную вами, обходным путем является установка '$ compileProvider.preAssignBindingsEnabled (true);'. Я попробовал это, и он ** работал **. Я не знал, что делает _preAssignBindingsEnabled() _ при чтении его описания (https://docs.angularjs.org/api/ng/provider/$compileProvider). Я не понимаю этого. Таким образом, надеясь, что это ничего не повлияет, и безопасно установить '$ compileProvider.preAssignBindingsEnabled (true);' –

+0

Добро пожаловать. Удачи. –

+0

@SHRUTHIBHARADWAJ Не могли бы вы предоставить код для ваших изменений? У меня такая же проблема. Заранее спасибо. – akash

Смежные вопросы