想要在reactjs中显示上个月的最后一天

时间:2019-11-21 09:16:16

标签: reactjs

enter image description here

我最初想显示上个月的最后日期,例如,这是11月,我想显示31/10/2019。怎么可能?

      var date = new Date();
        date.setMonth(date.getMonth())
        const firstDayOfCurrent = new Date(date.getFullYear(), date.getMonth(), 0);
        const firstDayOfCurrentMonth = moment(firstDayOfCurrent).format('MM/DD/YYYY')
        console.log(firstDayOfCurrentMonth);

 <td><input type="date" value={firstDayOfCurrentMonth} onChange={(e) => { this.state.invoice.InvoiceDateString  = e.target.value; this.setState({ isset: true }); }} required /></td>

3 个答案:

答案 0 :(得分:1)

您可以从当前日期开始一个月到当前月份的第一天,然后减去一天:

const today = new Date();
const firstDayOfCurrentMonth = new Date(today.getFullYear(), today.getMonth(), -1);
``

答案 1 :(得分:1)

此代码段将为您提供上个月的最后日期

var date = new Date();
date.setMonth(date.getMonth())
var lastDay = new Date(date.getFullYear(), date.getMonth(), 0);
var lastDayOfLastMonth = lastDay.toISOString().substr(0, 10);

和您的输入标签

<input type="date" defaultValue={lastDayOfLastMonth } required />

答案 2 :(得分:0)

我建议使用date-fns,它具有大量的辅助功能,可用于该用例。

例如lastDayOfMonth,它返回该月的最后一天。

它还允许进行树式编程,因此您不必导入整个库,而只需导入使用的功能。