Angular - 将日期管道与 ngModel 一起使用
Angular - using a date pipe with ngModel
我的控制台出现以下错误 - “错误:InvalidPipeArgument:管道 'DatePipe' 的 'Unable to convert "[object Object]" into a date'”。
我有一个日历输入,它应该允许用户 select 一个日期,然后以特定格式 'dd/MM/yyyy' 传递该日期。我希望 selected 的日期在他们 selected 日期后显示在日历输入中。
我意识到如果那里有管道,我就无法在 [ngModel] 上进行双向绑定,所以我正在使用
(ngModelChange)。如果我删除了#createdByCutOffDate="ngModel",那么错误就被删除了,但是我无法在日历输入中看到 selected 日期。
我还尝试了采用日期类型或字符串的 updateCreatedByCutOffDate() 方法。
this.createdByCutOffDate 的格式如下 - 'Thu Feb 17 2022 00:00:00 GMT+0000 (Greenwich Mean Time)'
component.html
<input type="date"
id="createdByCutOffDate"
[ngModel]="createdByCutOffDate | date:'dd/MM/yyyy'"
#createdByCutOffDate="ngModel"
(ngModelChange)="updateCreatedByCutOffDate($event)" />
component.ts
createdByCutOffDate: Date;
updateCreatedByCutOffDate(date: string) {
this.createdByCutOffDate = new Date(date);
}
createdByCutOffDate
是一个 Date
对象,它有自己的方法和属性。
因此,要解决您的问题,请使用 "createdByCutOffDate.date | date:'dd/MM/yyyy'"
而不是 "createdByCutOffDate | date:'dd/MM/yyyy'"
我的控制台出现以下错误 - “错误:InvalidPipeArgument:管道 'DatePipe' 的 'Unable to convert "[object Object]" into a date'”。
我有一个日历输入,它应该允许用户 select 一个日期,然后以特定格式 'dd/MM/yyyy' 传递该日期。我希望 selected 的日期在他们 selected 日期后显示在日历输入中。
我意识到如果那里有管道,我就无法在 [ngModel] 上进行双向绑定,所以我正在使用 (ngModelChange)。如果我删除了#createdByCutOffDate="ngModel",那么错误就被删除了,但是我无法在日历输入中看到 selected 日期。
我还尝试了采用日期类型或字符串的 updateCreatedByCutOffDate() 方法。
this.createdByCutOffDate 的格式如下 - 'Thu Feb 17 2022 00:00:00 GMT+0000 (Greenwich Mean Time)'
component.html
<input type="date"
id="createdByCutOffDate"
[ngModel]="createdByCutOffDate | date:'dd/MM/yyyy'"
#createdByCutOffDate="ngModel"
(ngModelChange)="updateCreatedByCutOffDate($event)" />
component.ts
createdByCutOffDate: Date;
updateCreatedByCutOffDate(date: string) {
this.createdByCutOffDate = new Date(date);
}
createdByCutOffDate
是一个 Date
对象,它有自己的方法和属性。
因此,要解决您的问题,请使用 "createdByCutOffDate.date | date:'dd/MM/yyyy'"
而不是 "createdByCutOffDate | date:'dd/MM/yyyy'"