Je tente de créer mon propre composant à partir du sélecteur de date de ng-bootstrap (je ne veux pas tout ce balisage à chaque fois que j'utilise le sélecteur de date).
Le sélecteur de date fonctionne bien tout seul, mais la valeur ne se lie pas à la page où le composant est utilisé.
Voici mon sélecteur de date - copié de la page d'exemple de ng-bootstrap:
Modèle: {{ selectedDate | json }}
Mon composant:
import { Component, OnInit } from '@angular/core';
import {NgbDateStruct, NgbDateParserFormatter} from '@ng-bootstrap/ng-bootstrap';
@Component({
selector: 'reo-datepicker-popup',
templateUrl: './datepicker-popup.component.html',
})
export class DatepickerPopupComponent implements OnInit {
selectedDate; any;
constructor() {}
ngOnInit() {
}
}
Le composant est utilisé de cette manière:
Il y a d'autres contrôles sur ma page où [(ngModel)]
fonctionne comme prévu. Je peux définir une valeur par défaut pour selectedDatePopup
dans la page parent - et cette valeur se propagera au sélecteur de date, mais ne remontera pas au parent lorsqu'elle est modifiée.
J'ai essayé @Input()
au lieu de [(ngModel)]
avec le même résultat. J'ai également vérifié que NgbModule
est importé dans chaque module (ngbModule.forRoot()
dans le module de l'application), et FormsModule
est toujours importé avant NgbModule
.
Version d'Angular 5.2.3
Version de ng-bootstrap 1.02
Toute aide est appréciée.