答案 0 :(得分:1)
很容易让自己。创建一个具有参数的函数:星期,星期几(0到6),月份和年份
因为一个月的第一天可能是星期一,星期四......您必须根据您选择的月份和年份计算“增量”,并将其作为参数传递给函数
private getIncrement(year:number,month:number): number{
let date = new Date('' + year + '-' + month + '-1');
let increment = date.getDay() > 0 ? date.getDay() - 2 : 5;
return increment;
}
private getDate(week: number, dayWeek: number,
year:number,month:number,increment:number) {
let date:any
let day = week * 7 + dayWeek - increment;
if (day <= 0) {
let fechaAuxiliar = new Date('' + year + '-' + month + '-1');
date = new Date(fechaAuxiliar.getTime() + ((day - 1) * 24 * 60 * 60 * 1000));
}
else {
date = new Date('' + year + '-' + month + '-' + day);
if (isNaN(date.getTime())) {
let fechaAuxiliar = new Date('' + year + '-' + month + '-1');
date = new Date(fechaAuxiliar.getTime() + ((day + 1 - increment) * 24 * 60 * 60 * 1000));
}
return date;
}
毕竟,你制作一个* ngFor,添加两个按钮并享受代码!
答案 1 :(得分:0)
Material 2有一个很好的日期选择器,免费且易于使用
ng2-date-picker似乎也有你所追求的具体细节