首页 > 其他分享 >vue获取日期的封装方法

vue获取日期的封装方法

时间:2024-06-19 14:57:40浏览次数:11  
标签:00 vue const 日期 && date 封装 getDate

①封装js方法文件,我一般存放在utils文件夹下面。

//封装的js文件名叫currentDate.js
const getDate = {
    //对日期进行简单的增加和格式化操作,用于获取指定日期的后一天日期,并以特定格式返回。
    getIntroDuctionDay(dateTime) {
        let date =  new Date(dateTime);
        date.setDate(date.getDate() + 1);//将 date 对象的日期增加一天,表示取传入日期的后一天日期
        let month = date.getMonth() + 1;
        let strDate = date.getDate();
        if (month >= 1 && month <= 9) {
          month = "0" + month;
        }
        if (strDate >= 0 && strDate <= 9) {
          strDate = "0" + strDate;
        }
        let currentdate = date.getFullYear() + "-" + month + "-" + strDate;
        return currentdate;
      },
    //取当天日期,并以特定格式返回。
    getTodayOnly() {
        let date = new Date();
        let month = date.getMonth() + 1;
        let strDate = date.getDate();
        if (month >= 1 && month <= 9) {
          month = "0" + month;
        }
        if (strDate >= 0 && strDate <= 9) {
          strDate = "0" + strDate;
        }
        //根据自己需求修改返回格式就行
        let currentdate = date.getFullYear() + "-" + month + "-" + strDate;
        return currentdate;
      },
    //获取传入日期的七天前日期 time是年月日没有时分秒哦~
    frontSevenDays(time){
        let now = new Date(time);
        return formatDateTime(new Date(now.getFullYear(), now.getMonth(), now.getDate() - 7))
    }
    //获取具体时间 星期
     getDetailedDate() {
        var date = new Date();
        let year = date.getFullYear();
        let month = date.getMonth() + 1;
        let day = date.getDate();
        if (month >= 1 && month <= 9) {
          month = "0" + month;
        }
        if (day >= 0 && day <= 9) {
          day = "0" + day;
        }
        let week = new Array(
          "星期日",
          "星期一",
          "星期二",
          "星期三",
          "星期四",
          "星期五",
          "星期六"
        )[date.getDay()];
        let hour = date.getHours() < 10 ? "0" + date.getHours() : date.getHours();
        let minute =
          date.getMinutes() < 10 ? "0" + date.getMinutes() : date.getMinutes();
        let second =
          date.getSeconds() < 10 ? "0" + date.getSeconds() : date.getSeconds();
        return `${year}年${month}月${day}日 ${week} ${hour}:${minute}:${second}`;
      },
}

②在页面当中使用改方法,如下:

<script setup>
    import { onMounted, reactive } from 'vue'
    //注意 引入这个文件的名字需和你文件导出的名字一致getDate,否则会报错
    import getDate from '@/utils/currentDate.js'
    const appointMentDate = '2024-06-19 00:00:00'
    onMounted(()=>{
        //获取传入日期的后一天数据
        const temp = getDate.getIntroDuctionDay(appointMentDate);
        console.log('temp',temp);//会得到你传入日期的后一天日期数据 2024-06-20 00:00:00
        //获取当天日期数据
        const tempDay = getDate.getTodayOnly();
        console.log('tempDay',tempday);// 2024-06-20 18:26:03
        //获取七天前数据
        const frontDay = getDate.frontSevenDays();
        console.log('frontDay',frontDay);// 2024-06-12
        //获取当天具体时间星期
        const tempDateTime = getDate.getDetailedDate();
        console.log('tempDateTime',tempDateTime);// 2024年06月19日 星期三 14:52:11
    });
    
<script>

标签:00,vue,const,日期,&&,date,封装,getDate
From: https://blog.csdn.net/weixin_61001537/article/details/139801942

相关文章

  • 封装定时器方法
    需求:查询的历史数据需要定时3分钟刷新(产品提的要求照做!!!)//周期性地执行指定的回调函数,并在组件销毁时清除该定时器,以防止内存泄漏或不必要的回调执行exportconsttimmingLoadingsTime=(callback,time)=>{constrollertimer2=ref(null);rollertimer2.value=se......
  • Python文件嵌入html(vue)中,在浏览器中跑起来
    近期有个需求,之前项目是用python写的,需要包一层html,在浏览器中跑起来。推荐框架PyScript  https://pyscript.net/ 文档中有一些在线的example 在本地试了试<!doctypehtml><html><head><!--Recommendedmetatags--><metacharset="UTF-8"><metaname......
  • nuxt3+vue3+vite+TS实现国际化
    前言博主最近打算用Nuxt3重构了自己SSR博客,打算添加国际化功能,众所周知,实现国际化已是一个很常见的功能。用户可以根据自己的喜好,设置页面的自己合适的语言,从而实现国际化浏览。这样用户体验度会大大提升。博客用的nuxt3+vue3+vite+TS实现国际化,国际化用的vue-i18n,下面我给大......
  • java面向对象-封装
    一封装(面向对象的三大特征--封装)1.1封装的概念将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问1.2封装的步骤私有化(private)是一个权限修饰符。可以修饰成员(成员变量和成员方法)被private修饰的成员......
  • Vue3如何绑定全局方法和变量
    Vue2中Vue.prototype绑定全局方法,此写法在Vue3已经不存在了。与任何全局的东西一样,应该谨慎使用。Vue3使用provide/inject或者app.config.globalProperties进行绑定如果全局属性与组件自己的属性冲突,组件自己的属性将具有更高的优先级。 一、provide/inject方法......
  • 基于SpringBoot+Vue的高校爱心捐赠系统设计与实现(源码+lw+部署+讲解)
    文章目录前言详细视频演示具体实现截图技术可行性分析技术简介后端框架SpringBoot前端框架Vue系统开发平台系统架构设计业务流程分析为什么选择我们自己的公众号(一点毕设)海量实战案例代码参考数据库参考源码及文档获取前言......
  • 面向对象的封装性(Java)
    目录1、封装的概念2、访问限定符3、包3、1自定义包3、2 常见的包4、static成员4、1static修饰成员变量4、2static修饰成员方法 4、3static成员变量初始化5、代码块5、1代码块概念以及分类5、2普通代码块5、3构造代码块5、4静态代码块1、封装的概念面向对......
  • vue通讯中provide / inject适⽤于隔代组件通信原理和例子
    在Vue中,provide和inject是用于实现跨层级组件通信的API,特别适用于隔代组件通信的场景。下面我将详细解释其原理和提供一个具体的例子。原理定义:provide:允许一个祖先组件向其所有子孙后代组件提供一个依赖,不论组件层次有多深,只要在其下游,就可以通过inject来接收。injec......
  • Vue 3中的ref:深入理解响应式引用
    ......
  • Vue 3中的reactive:响应式对象和数组
    ......