89 votes

Matériau angulaire: MatDatepicker: Aucun fournisseur trouvé pour DateAdapter

Je suis en train d'utiliser le composant Datepicker Angulaire du Matériel. Voici mon code HTML:

<input matInput [matDatepicker]="picker" placeholder="Choose a date" disabled>
<mat-datepicker #picker disabled="false"></mat-datepicker>

Toutefois, il ne fonctionne pas pour moi et j'obtiens l'erreur suivante:

Erreur: MatDatepicker: Aucun fournisseur n'a trouvé pour DateAdapter.

Le message d'erreur me dit que j'ai besoin d'importer MatNativeDateModule ainsi que MatDatepickerModule mais je l'ai fait. Voici mon code d'importation ci-dessous à partir de l'app.le module.ts:

import {
    MatFormFieldModule,
    MatMenuModule,
    MatCheckboxModule,
    MatIconModule,
    MatDatepickerModule,
    MatNativeDateModule
} from '@angular/material';

Est-il autre chose que je suis absent?

164voto

Sajeetharan Points 108195

Vous devez importer MatDatepickerModule et MatNativeDateModule sous les importations et ajouter MatDatepickerModule sous les fournisseurs

  imports: [
    MatDatepickerModule,
    MatNativeDateModule 
  ],
  providers: [  
    MatDatepickerModule,  
  ],
 

18voto

Sushil Points 64

Importez simplement le

MatNativeDateModule

avec le

MatDatepickerModule

sur app.module.ts ou app-routing.module.ts.

 @NgModule({
imports: [
    MatDatepickerModule,
    MatNativeDateModule 
]
})
 

6voto

Tomasz Kula Points 6759

Officiel docs: Erreur: MatDatepicker: Aucun fournisseur n'a trouvé pour DateAdapter/MAT_DATE_FORMATS

Le datepicker a été construit à la date de la mise en œuvre agnostique. Cela signifie qu'il peut être fait de travailler avec une variété de différents date d'implémentations. Mais cela signifie aussi que les développeurs ont besoin pour s'assurer de fournir les pièces appropriées pour le datepicker de travailler à leur mise en œuvre. La meilleure façon de s'assurer que c'est juste à importer l'un des pré-modules: MatNativeDateModule, MatMomentDateModule.

Correctif:

@NgModule({
  imports: [MatDatepickerModule, MatNativeDateModule],
})
export class MyApp {}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X