element-ui 月份选择器,获取所选月的最后一天

根据数据查询需求:

选择查询的月份时,当所选月份为当前月时,获取当天日期 。 非当前月时,获取所选月的最后一天 ,为了简便,我就把所有的endDate时间都设置成了所选月份的最后一天。

用到的部分HTML如下:(可以根据自己的需要去适当删减一些)

<span class="label" prop="endDate">日期:</span>
<el-date-picker popper-class="electric-date" v-model="selectedMonth" type="month" placeholder="请选择时间" :picker-options="pickerOptions" style="width: 200px;">
</el-date-picker>
 export default {
    data() {
        selectedMonth: new Date(),
        lastDayOfMonth: "",
        date: "",
        endDate: "",
        formattedDate: "",
    }
}

如果需要在接口函数里作为请求参数传下去可以把拿到的最后一天写进接口函数里

 methods: {
     abc() {
        this.loading = true;
        let today = this.selectedMonth;
        let year = today.getFullYear();
        let month = today.getMonth() + 1;
        // 获取下个月的第一天
        let nextMonthFirstDay = new Date(year, month, 1);
        // 减去一天得到本月最后一天
        let lastDayOfMonth = new Date(nextMonthFirstDay - 1);
        let lastDay = lastDayOfMonth.getDate().toString().padStart(2, '0');
        let lastMonth = (lastDayOfMonth.getMonth() + 1).toString().padStart(2, '0');
        let formattedDate = `${year}-${lastMonth}-${lastDay}`;
        let param = {
          projectId: this.projectId,
          endDate: formattedDate,
        };
        let self = this;
        API.abc(param).then(function (res){
            // 需要实现的逻辑
    }
}
如果需要所选月份为当前月时,获取当天日期 。可以对let today的选值做一下限制,当let today = new Date();时选择本月时获取到的时间为当前日期。

这个问题本来不难只是我对选择的日期给值时给错了,导致这个问题排查用了会儿时间,这个问题在网上也有很多方法,我也是用了其中一种

对于网上说的获取当前日期的一个方法也很受用,只是我没用和我个人上边的代码没有啥关系,但是觉得不错,我放在下面可以根据自己的实际情况参考来用

formatDate () {
        var now = new Date();
        var year = now.getFullYear();
        var month = now.getMonth();
        var date = now.getDate();
        month = month + 1;
        if (month < 10){
            month = "0" + month;
            }
        if (date < 10) {
        date = "0" + date;
        }
        var time = year + "-" + month + "-" + date;
        return time;
    },

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值