Angular material: MatDatepicker: No provider found for DateAdapter
Just import the
MatNativeDateModule
along with the
MatDatepickerModule
at the app.module.ts or app-routing.module.ts.
@NgModule({
imports: [
MatDatepickerModule,
MatNativeDateModule
]
})
Angular 8, 9
import { MatDatepickerModule } from '@angular/material/datepicker';
import { MatNativeDateModule } from '@angular/material/core';
Angular 7 and below
import { MatDatepickerModule, MatNativeDateModule } from '@angular/material';
You need to import both MatDatepickerModule
and MatNativeDateModule
under imports and add MatDatepickerModule
under providers
imports: [
MatDatepickerModule,
MatNativeDateModule
],
providers: [
MatDatepickerModule,
MatNativeDateModule
],
You need to import both MatDatepickerModule
and MatNativeDateModule
under imports and add MatDatepickerModule
under providers
imports: [
MatDatepickerModule,
MatNativeDateModule
],
providers: [
MatDatepickerModule,
],
Official docs: Error: MatDatepicker: No provider found for DateAdapter/MAT_DATE_FORMATS
The datepicker was built to be date implementation agnostic. This means that it can be made to work with a variety of different date implementations. However it also means that developers need to make sure to provide the appropriate pieces for the datepicker to work with their chosen implementation. The easiest way to ensure this is just to import one of the pre-made modules: MatNativeDateModule, MatMomentDateModule.
Fix:
@NgModule({
imports: [MatDatepickerModule, MatNativeDateModule],
})
export class MyApp {}