angulaire à 2 ng-bootstrap datepicker popup
Salut, je suis d'enquêter sur ng-bootstrap datepicker. J'ai regardé le code de démonstration et a été en mesure de le faire fonctionner dans mon application.
Cependant, si j'ai ajouté plus de 1 datepicker les balises input, un seul fonctionne. Sont ci-dessous le code que j'ai créé. J'ai essayé de changer le #d #d1 et #d2 (également modifier le toggle() de la partie) et la page crache des erreurs.
<div class="input-group">
<input class="form-control" placeholder="yyyy-mm-dd" name="dp" [(ngModel)]="newItem.EndTime" ngbDatepicker #d="ngbDatepicker" required>
<div class="input-group-addon" (click)="d.toggle()" >
<i class="fa fa-calendar" aria-hidden="true"></i>
</div>
</div>
<div class="input-group">
<input class="form-control" placeholder="yyyy-mm-dd" name="dp" [(ngModel)]="newItem.StartTime" ngbDatepicker #d="ngbDatepicker" required>
<div class="input-group-addon" (click)="d.toggle()" >
<i class="fa fa-calendar" aria-hidden="true"></i>
</div>
</div>
J'ai aussi essayé de l'envelopper avec un composant et il m'a permis d'avoir plusieurs datepicker exemple pour des propriétés différentes. Cependant, il ne semble pas de passer de la valeur pour le composant parent.
new.campaign.html
<div class="row col-md-12 col-lg-12">
<div class="col-md-4 col-lg-4">
<label for="campaignStartTime">Start Time</label>
<datepicker-popup [(model)]="newItem.StartTime" (modelChange)="updateDate($event)" [required]="true" id="campaignStartTime"></datepicker-popup>
</div>
</div>
datepicker-popup.composante.ts
import {Component, Input, Output, EventEmitter} from '@angular/core';
@Component({
selector: 'datepicker-popup',
templateUrl: 'app/campaign/datepicker-popup.html'
})
export class DatepickerPopupComponent {
@Input()
model:any;
@Input()
id:string;
@Input()
required:boolean=false;
@Output()
modelChange: EventEmitter<any> = new EventEmitter();
constructor(){ }
updateModel(){
let date = this.model;
date = '12/22/2016'
this.modelChange.emit(date);
}
}
datepicker-popup.html
<div class="input-group">
<input class="form-control" placeholder="yyyy-mm-dd" name="dp [(ngModel)]="model" (change)="updateModel()" ngbDatepicker #d="ngbDatepicker" required>
<div class="input-group-addon" (click)="d.toggle()" >
<i class="fa fa-calendar" aria-hidden="true"></i>
</div>
</div>
Quelqu'un peut-il m'indiquer la bonne direction pour résoudre le problème?
Autant que je sache, ng2-bootstrap n' pas support pour les datepickers dans les popups et un utilisateur est de demander spécifiquement pour les ng-bootstrap.github.io de sorte que votre commentaire n'est pas utile.
Je suis l'aide de ng2-bootstrap dans mon projet actuel, pour tous les champs de date, donc je sais qu'il prend en charge la popup datepicker. Et parce qu'il est à la recherche pour le gn-bootstrap solution, je n'ai pas poster une réponse.
OriginalL'auteur Chuck | 2016-09-23
Vous devez vous connecter pour publier un commentaire.
Il doit y avoir quelque chose de spécifique pour votre application depuis cette approche est la bonne. Un travail extrait de code:
Et l'exemple vivant dans plunker: https://plnkr.co/edit/ZC3dOX9anbbNUMPEEd5W?p=preview
Vérifiez que vous avez entrée unique des noms et que vous utilisez unique les noms de variables pointant vers une directive de l'instance (
#d1
,#d2
etc.). Si vous avez toujours de la difficulté à le reproduire dans l'plunker, je suis lié et ouvrez un problème dans https://github.com/ng-bootstrap/ng-bootstrapComment faire pour que cela sera possible pour les formes réactives?
OriginalL'auteur pkozlowski.opensource