说明:
当传入的date是正数n时(比如1),返回的是你当前日期的前n天,传入为0时,就返回当前日期,传入为负数n时(比如-1),返回的就是你当前日期的后n天

代码如下:

ShowDate(date){
            var num = date
            let n = num;
            let d = new Date();
            let year = d.getFullYear();
            let mon = d.getMonth() + 1;
            let day = d.getDate();
            if(day <= n) {
                if(mon > 1) {
                    mon = mon - 1;
                } else {
                    year = year - 1;
                    mon = 12;
                }
            }
            d.setDate(d.getDate() - n);
            year = d.getFullYear();
            mon = d.getMonth() + 1;
            day = d.getDate();
            let s = year + "-" + (mon < 10 ? ('0' + mon) : mon) + "-" + (day < 10 ? ('0' + day) : day);
            return s;
        }

代码演示:
分别传入0,7,-7

<el-menu-item index="0" @click="ShowDate('0')">当天</el-menu-item>
<el-menu-item index="7" @click="ShowDate('7')">前7天</el-menu-item>
<el-menu-item index="-7" @click="ShowDate('30')">后7天</el-menu-item> 

返回结果如下:
在这里插入图片描述

参考博客:
https://www.cnblogs.com/aoqizhonghua/p/11775982.html

Logo

前往低代码交流专区

更多推荐