我使用的mat-datetimepicker与素材的datepicker相同,但也要增加时间。我现在尝试更改显示的日期时间的格式。为此,我需要覆盖MAT_DATETIME_FORMATS
。
我的问题是我无法导入MAT_DATETIME_FORMATS
。我如何尝试:
import { MAT_DATETIME_FORMATS } from '@mat-datetimepicker/core/adapter';
我得到的错误:
Module not found: Error: Can't resolve '@mat-datetimepicker/core/adapter'
如果我查看自己的node_modules文件夹,则会在MAT_DATETIME_FORMATS
下找到@mat-datetimepicker/core/adapter
它在文件datetime-formats.d.ts中。
您还可以查看hithub上的存储库: https://github.com/kuhnroyal/mat-datetimepicker/tree/master/projects/core/src/adapter
但是我的导入无效。 我想念什么?为什么找不到模块?
答案 0 :(得分:0)
根据有角度的官方文档来更改日期格式,您需要在app.module.ts中完全插入日期格式的提供者中
providers: [
{ provide: LOCALE_ID, useValue: 'it-IT' }
]
还请记住在app.module.it中导入LOCALE_ID
import {LOCALE_ID} from '@angular/core';
要在组件中使用MAT_DATE_FORMATS,请添加提供程序:
Component({
selector: 'my-component',
templateUrl: './my-component.component.html',
styleUrls: ['./my-component.component.css'],
providers: [
// `MomentDateAdapter` and `MAT_MOMENT_DATE_FORMATS` can be automatically provided by importing
// `MatMomentDateModule` in your applications root module. We provide it at the component level
// here, due to limitations of our example generation script.
{ provide: DateAdapter, useClass: MomentDateAdapter, deps: [MAT_DATE_LOCALE] },
{ provide: MAT_DATE_FORMATS, useValue: MAT_MOMENT_DATE_FORMATS },
],
})
具有以下导入:
import { MAT_MOMENT_DATE_FORMATS, MomentDateAdapter } from '@angular/material-moment-adapter';
您可以像这样播放日期:
startDate = moment([1970, 0, 1]);
minDate = moment([1930, 0, 1]);
maxDate = moment([2004, 0, 1]);
答案 1 :(得分:0)
MAT_DATETIME_FORMATS
可以直接从核心导入:
import { MAT_DATETIME_FORMATS } from '@mat-datetimepicker/core';