Angularjs simple datepicker à l'aide du contrôleur de ne pas $portée

Je suis en train d'utiliser le angular-ui bootstrap pour dateranges.

http://angular-ui.github.io/bootstrap/#/datepicker

Le lien contient quelques bons exemples. Cependant je veux utiliser controller as de la syntaxe et de ne pas la portée qu'il montre dans le lien ci-dessus.

J'ai essayé, comme vu ci-dessous. Mais il n'affiche pas la boîte du calendrier lors de son cliqué sur. Ses pas le retour des erreurs, de sorte que je suis un peu perdu sur ce que je dois faire. Je pense que mon exemple est proche.

Voici ma tentative sur violon

Des extraits de Code ci-dessous..

js_file.js

angular.module('ui.bootstrap.demo', ['ui.bootstrap']);
angular.module('ui.bootstrap.demo').controller('DatepickerDemoCtrl', function() {

  self = this;
  self.someProp = 'Check This value displays.. confirms controller initalised'

  self.opened = {};
  self.open = function($event) {

    $event.preventDefault();
    $event.stopPropagation();

    self.opened = {};
    self.opened[$event.target.id] = true;

    //log this to check if its setting the log    
    console.log(self.opened);

  };

  self.format = 'dd-MM-yyyy'
});

index.html

<body>
<div ng-controller="DatepickerDemoCtrl as demo">
<style>
  #dateFrom, #dateTo { width: 200px;}
</style>

  {{ demo.someProp }}

  <div class="form-group">

      <div class="input-group">

          <input type="text" 
            class="form-control date" 
            id="dateFrom" 
            placeholder="From" 
            ng-click="demo.open($event)"   
            datepicker-popup="{{demo.format}}" 
            ng-model="demo.dtFrom" 
            is-open="demo.dateFrom" 
            min-date="minDate" 
            max-date="'2015-06-22'" 
            datepicker-options="dateOptions" 
            date-disabled="disabled(date, mode)" 
            ng-required="true" 
            close-text="Close" >


          <input type="text" 
            class="form-control date" 
            id="dateTo"   
            placeholder="To" 
            ng-click="demo.open($event)"  
            datepicker-popup="{{demo.format}}" 
            ng-model="demo.dtTo" 
            is-open="demo.dateTo" 
            min-date="minDate" 
            max-date="'2015-06-22'" 
            datepicker-options="dateOptions" 
            date-disabled="disabled(date, mode)" 
            ng-required="true" 
            close-text="Close" >

      </div>

  </div>

</div>
</body>
  • Si vous voyez le code d'clairement l'exemple de "bootstrap" est également à l'aide du contrôleur lui-même...dans le contrôleur ils sont à l'aide de la portée de la directive. angulaire.module (interface utilisateur.bootstrap.la démo).contrôleur('DatepickerDemoCtrl', function ($champ) {
  • Je suis en train de le faire sans le champ d'application de la directive à l'aide du nouveau contrôleur façon.
InformationsquelleAutor Robbo_UK | 2015-01-27