如何连续获取前一天?例如,我有这个 HTML:
<ul>
<li (click)="prevDay()"></li>
</ul>
<div>{{day}}</div>
JS:
dayBefore() {
let now: any = new Date();
this.days = ['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'];
this.day = this.days[now.getDay() - 1];
}
这样我只能得到昨天的数据,但我不断地需要它。当我再次点击<div>{{day}}</div>
时我需要它在“昨天”的前一天等等。所以,星期四,星期三,星期二,等等......
编辑:今天和明天都一样......
最佳答案
在您的 Controller 中,仅初始化一次新日期数组
private myDate=new Date();
private days = ['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'];
private day = this.days[this.myDate.getDay()];;
所以你今天有约会了。然后在更改日期的方法中更新您的日期。
private dayBefore(){
this.myDate=this.myDate.addDays(-1);
this.day= this.days[this.myDate.getDay()];
}
private dayAfter(){
this.myDate=this.myDate.addDays(1);
this.day= this.days[this.myDate.getDay()];
}
private restoreToday(){
this.myDate=new Date();
this.day= this.days[this.myDate.getDay()];
}
并且,在您的 html 中
<ul>
<li (click)="dayBefore()">Prev</li>
<li (click)="restoreToday()">Today</li>
<li (click)="dayAfter()">Next</li>
</ul>
<div>{{day}}</div>
关于javascript - 连续获取之前、今天和明天的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43545614/