波斯汪
2023-03-03 13:15:56
我已經(jīng)建立了一個(gè)顯示日期表和相應(yīng)日期的日歷,我想添加在月份之間更改的功能。我在這里制作的方法確實(shí)“有效”。當(dāng)我單擊具有此功能的按鈕時(shí),它可以追溯到一個(gè)月前。但只有一次,這是因?yàn)?selectedDate 沒有更新,所以當(dāng)我嘗試使用我注釋掉的 console.log(selectedDate) 進(jìn)行調(diào)試時(shí),它仍然打印今天的日期。希望有人能在這里幫助我methods: { prevMonth() { var selectedDate = moment(new Date()); let futureMonth = moment(selectedDate.subtract(1, 'month')).startOf('month') selectedDate = futureMonth; //return console.log(selectedDate) this.days = [...Array(futureMonth.daysInMonth())].map((_, i) => { return { date: futureMonth.clone().add(i, "day"), workhours: Math.floor(Math.random()*10), overtime: Math.floor(Math.random()*10), flextime: 0, sickness: 0, vacation: 0, } }) }}
1 回答

手掌心
TA貢獻(xiàn)1942條經(jīng)驗(yàn) 獲得超3個(gè)贊
moment(new Date())每次運(yùn)行此方法時(shí)都將 selectedDate 設(shè)置為。所以它總是以今天為基礎(chǔ)倒退一個(gè)月。
您需要保持 selectedDate 的狀態(tài),這樣的事情應(yīng)該有效:
data() {
return {
selectedDate: undefined
}
},
mounted() {
this.selectedDate = moment(new Date())
},
methods: {
prevMonth() {
let futureMonth = moment(this.selectedDate.subtract(1, 'month')).startOf('month')
this.selectedDate = futureMonth;
......
})
}
}
添加回答
舉報(bào)
0/150
提交
取消