Comment utiliser $ index pour définir le calendrier UIC bootstrap angulaire est un attribut open-open?

J'utilise angular-ui bootstrap pour configurer le calendrier. Ma question est de savoir comment définir la propriété is-open dans l'itération ngRepeat avec l'indice $? Si tous les mêmes paramètres, lorsque l'utilisateur clique sur le calendrier, tout le calendrier apparaîtrait. Mais le

is-open="newTestDateOpened + $index" 

ne marche pas. Alors, comment puis-je le faire? Alors dans la fonction setNewTestDate ($ event, $ index), je peux le définir comme vrai.

  <div ng-repeat='history in testingHistory'> <div class="row"> <div class="col-sm-2"> <p class="input-group"> <input type="text" class="form-control" datepicker-popup="dd-MM-yyyy" ng-model="history.testingDate" is-open="newTestDateOpened + $index" max-date="maxDate" close-text="Close" /> <span class="input-group-btn"> <button type="button" class="btn btn-default" ng-click="setNewTestDate($event,$index)"><i class="glyphicon glyphicon-calendar"></i></button> </span> </p> </div> </div> </div> 

J'ai compris un chemin par moi-même. Pour ceux qui auraient des questions similaires.

Utilisez simplement l'objet JavaScript.

 is-open="existingTestDate['idx'+$index]" ... ng-click="setExistingTestDate($event,$index)" 

Ensuite, dans le fichier js correspondant.

 $scope.existingTestDate = {}; $scope.setExistingTestDate = function($event,idx) { $event.preventDefault(); $event.stopPropagation(); $scope.existingTestDate['idx'+idx] = true; }; 

De cette façon, vous pouvez contrôler le bouton du calendrier dans une itération ngRepeat.