角材料 日期选择器,取出@angular/材料 7.x, 8.x, 9.x, 10.x, 11.x, 12.x, 13.x, 14.x, 15.x, 16.x
说明
像 @angular/ material 这样的日期选择器 摘取日期者 为选择时间添加支持.
德莫尔
@ 见 生活状况和文件
@ 见 DEMO 堆点

选择对应您的 Angular 版本的版本 :
| 角质 | @ angular- material- 组件/ 日期时间选择器 |
|---|---|
| 16个 | 16.x+ (中文(简体) ) |
| 15个 | 15.x+ OR 9.x+ 用于遗留的导入 |
| 页:1 | 8.x+ 单曲 |
| 第13条 | 7.x+ (中文(简体) ) |
| 第12条 | 6.x+ 调取 |
| 第11个 | 5.x+ 时速 |
| 10个 | 4.x+ (中文(简体) ) |
| 第9条 | 2.x+ 时速 |
| 第8条 | 2.x+ 时速 |
| 第7条 | 2.x+ 时速 |
开始
npm install --save @angular-material-components/datetime-picker
设置
@angular/ material Datepicker 的配置和导入方式基本上相同 .
import { NgxMatDatetimePickerModule, NgxMatTimepickerModule } from '@angular-material-components/datetime-picker';
@NgModule({
...
imports: [
BrowserModule,
HttpClientModule,
BrowserAnimationsModule,
MatDatepickerModule,
MatInputModule,
NgxMatTimepickerModule,
FormsModule,
ReactiveFormsModule,
MatButtonModule,
NgxMatDatetimePickerModule,
],
...
})
export class AppModule { }
@ 见 src/app/demo-datetime/demo-datetime.module.ts (中文(简体) )
使用组件
与 @angular/ material Datepicker 相同的 API (@ 见) API 文件(中文(简体) )
日期时间拾取器(ngx-mat-date-time-拾取器)
<mat-form-field>
<input matInput [ngxMatDatetimePicker]="picker" placeholder="Choose a date" [formControl]="dateControl"
[min]="minDate" [max]="maxDate" [disabled]="disabled">
<mat-datepicker-toggle matSuffix [for]="picker"></mat-datepicker-toggle>
<ngx-mat-datetime-picker #picker [showSpinners]="showSpinners" [showSeconds]="showSeconds"
[stepHour]="stepHour" [stepMinute]="stepMinute" [stepSecond]="stepSecond"
[touchUi]="touchUi" [color]="color" [enableMeridian]="enableMeridian"
[disableMinute]="disableMinute" [hideTime]="hideTime">
</ngx-mat-datetime-picker>
</mat-form-field>
取时器(ngx-mat-time)
<ngx-mat-timepicker [(ngModel)]="date"></ngx-mat-timepicker>
<ngx-mat-timepicker [(ngModel)]="date" [disabled]="disabled"></ngx-mat-timepicker>
<ngx-mat-timepicker [(ngModel)]="date" [stepHour]="2" [stepMinute]="5" [stepSecond]="10"></ngx-mat-timepicker>
<ngx-mat-timepicker [(ngModel)]="date" [showSpinners]="showSpinners"></ngx-mat-timepicker>
<ngx-mat-timepicker [(ngModel)]="date" [showSeconds]="showSeconds"></ngx-mat-timepicker>
<ngx-mat-timepicker [(ngModel)]="date" [disableMinute]="disableMinute"></ngx-mat-timepicker>
<ngx-mat-timepicker [(ngModel)]="date" [defaultTime]="defaultTime"></ngx-mat-timepicker>
<ngx-mat-timepicker [formControl]="formControl"></ngx-mat-timepicker>
@ 输入 ngx- mat- time picker 列表
您可以使用所有@ 输入 ngx- mat- time picker 为 ngx- mat- date- time- picker
| @ 输入 | 类型 | 默认值 | 说明 |
|---|---|---|---|
| 已禁用 | 布尔 | 无效 | 如果选中的话, 选择器只能读, 不能修改 |
| 显示剪接器 | 布尔 | 真实 | 如果真实, 上下输入的旋转器可见 |
| 显示秒 | 布尔 | 真实 | 如果为真, 则无法选择秒 |
| 禁用最小值 | 布尔 | 虚假 | 如果为真, 分钟( 和秒) 只读 |
| 默认时间 | 阵列 | 未定义 | 当日期尚未定义时默认时间的数组 [小时, 分钟, 秒] |
| 步进 | 编号 | 1个 | 点击小时旋转器时要添加/ 减法的小时数 |
| 步骤 | 编号 | 1个 | 点击分钟自旋器时添加/ 减值的分钟数 |
| 第二档 | 编号 | 1个 | 单击第二个自旋器时要添加/ 减值的秒数 |
| 颜色 | 主题标签 | 未定义 | 选取日期日历上要使用的颜色调色板 . |
| 启用梅里迪亚语 | 布尔 | 虚假 | 是否显示 12H 或 24H 模式 . |
| 隐藏时间 | 布尔 | 虚假 | 如是等时所藏. |
| 触动Ui | 布尔 | 虚假 | 日历 UI 是否处于触摸模式 。 在触摸模式下,日历以对话框而不是弹出方式打开,元素有较多的粘贴来允许更大的触摸目标. |
选择日期执行和日期格式设置
取枣者是不可知的日期。 这意味着可以与各种不同日期的实施合作。 然而,这也意味着开发者需要确保为取枣者提供合适的棋子来配合其选定的执行.
确保这一点的最简单方法是导入一个提供的日期模块:
| Ngx MatNativeDate 模块 | NgxMat Moment 模块 | |
|---|---|---|
| 日期类型 | 日期 | 时刻 |
| 支持的地方 | 页:1 美国 | 详情见项目 |
| 依赖关系 | 无 | 时刻.js |
| 从 | @ angular- material- 组件/ 日期时间选择器 | @angular -- -- 材料 -- -- 组件/运动 -- -- 适应器 |
要使用 NgxMatMoment 模块 :
npm install --save @angular-material-components/moment-adapter
请注意:NgxMatNativeDateModule是基于JavaScript本地日期对象中可用的功能. 因此,它不适合许多当地人。 本地 Date 对象的最大缺点之一是无法设置剖析格式.
我们强烈建议使用 NgxMat Moment 模块 或习惯 NgxMatDate 自动调试器 与您选择的格式库/分隔库配合.
例如:
创建自定义日期适配器 :
@Injectable()
export class CustomDateAdapter extends NgxMatDateAdapter<D> {...}
// D can be Date, Moment or customized type
创建自定义的日期适配模块
@NgModule({
providers: [
{
provide: NgxMatDateAdapter,
useClass: CustomDateAdapter,
deps: [MAT_DATE_LOCALE, NGX_MAT_MOMENT_DATE_ADAPTER_OPTIONS]
}
],
})
export class CustomDateModule { }
您也可以在模块中提供自定义的 NGQMAT DATE FORMATS 来自定义日期格式 .
// If using Moment
const CUSTOM_DATE_FORMATS: NgxMatDateFormats = {
parse: {
dateInput: "l, LTS"
},
display: {
dateInput: "l, LTS",
monthYearLabel: "MMM YYYY",
dateA11yLabel: "LL",
monthYearA11yLabel: "MMMM YYYY"
}
};
//and in the module providers
providers: [
{ provide: NGX_MAT_DATE_FORMATS, useValue: CUSTOM_MOMENT_FORMATS }
]
他们
- @ 见@angular/材料 使用预建的主题
- 在索引.html中添加材料设计图标字体
<link href="https://fonts.googleapis.com/icon?family=Material+Icons&display=block" rel="stylesheet">
许可证
麻省理工学院
