gpt4 book ai didi

angular - 值 getDay 不是函数 Typescript Angular

转载 作者:行者123 更新时间:2023-12-02 10:38:06 26 4
gpt4 key购买 nike

我发现了一个类似的问题,但它没有回答我面临的问题。

我正在尝试将日期解析为字符串。这是我的实现。

export class DataFormater {

formatDDMMMYYY(date: Date): string {
return date.getDay().toString() + '/' + date.getMonth().toString() + '/' + date.getFullYear().toString();
}

}

但我收到一条错误消息,提示 date.getDay() 不是函数?当我查看文档时,它是一个数字,因此是 .toString()。有没有人遇到过这种情况或找到更好的方法来实现将日期解析为字符串以得到所需输出的方法。

-------------- 全面实现 ----------

<input class="form-control" placeholder="yyyy-mm-dd"
name="dp" ngbDatepicker #d="ngbDatepicker" [(ngModel)]="fromDate" (keyup)="setFilter()">

在组件中

toDate: Date;
fromDate: Date;

constructor(private dateFormater: DataFormater) {
this.toDate = new Date();
this.fromDate = new Date();
}

setFilter() {
if (this.toDate != null) {
console.log(this.toDate + " in toDate...");
this.filter.toDate = this.dateFormater.formatDDMMMYYY(this.toDate);
}
if (this.fromDate != null) {
this.filter.fromDate = this.dateFormater.formatDDMMMYYY(this.fromDate);
}
this.filterEmitter.emit(this.filter);
}

日期格式器

export class DataFormater {

constructor(){
console.log(this.formatDDMMMYYY(new Date))
}

formatDDMMMYYY(date: Date): string {
date = new Date(date);
return date.getDay().toString() + '/' + date.getMonth().toString() + '/' + date.getFullYear().toString();
}

}

最佳答案

您必须以不正确的格式将日期传递给函数。

尝试这样:

constructor(){
console.log(this.formatDDMMMYYY(new Date))
}

formatDDMMMYYY(date: Date): string {
return date.getDate().toString() + '/' + (date.getMonth()+1).toString() + '/' + date.getFullYear().toString();
}

<强> Working Demo

注意:由于您要将 id 转换为 DD/MM/YYYY,请使用 date.getDate() 而不是 date.getDay()date.getDay() 给出星期几。周五为 5(周日为 0)

关于angular - 值 getDay 不是函数 Typescript Angular,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59423174/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com