Vue获取当前时间并实时刷新的实现

 更新时间:2026年07月11日 14:18:34   作者:风轻轻~  
想知道如何在Vue中轻松获取并实时更新当前时间?本文将手把手教你使用created和beforeDestroy生命周期,结合data变量和定时器,实现秒级刷新,点击立即掌握这个实用的Vue技巧,避免常见坑点

一、Vue 中如何获取当前时间,并实时更新当前时间

data 生命周期中定义两个变量

data() {
  return {
    times:'',//格式化之后的当前时间
  };
},

created 生命周期中调用当前时间

created() {
  this.getTimes()
},
methods: {
  getTimes(){
    setInterval(this.getTimesInterval, 1000);
  },
  getTimesInterval:function() {
    let _this = this;
    let year = new Date().getFullYear(); //获取当前时间的年份
    let month = new Date().getMonth() + 1; //获取当前时间的月份
    let day = new Date().getDate(); //获取当前时间的天数
    let hours = new Date().getHours(); //获取当前时间的小时
    let minutes = new Date().getMinutes(); //获取当前时间的分数
    let seconds = new Date().getSeconds(); //获取当前时间的秒数
    //当小于 10 的是时候,在前面加 0
    if (hours < 10) {
      hours = "0" + hours;
    }
    if (minutes < 10) {
      minutes = "0" + minutes;
    }
    if (seconds < 10) {
      seconds = "0" + seconds;
    }
    //拼接格式化当前时间
    _this.times = year + "-" + month + "-" + day + " " + hours + ":" + minutes + ":" + seconds;
  }
}

在Vue实例销毁前,beforeDestroy 生命周期中清除定时器

beforeDestroy() {
  if (this.times) {
    clearInterval(this.getTimesInterval); 
  }
},

二、一个实例

<template>
  <div>
    {{times}}
  </div>
</template>

<script>
export default {
  data() {
    return {
      times:'',//格式化之后的当前时间
    };
  },
  created() {
    this.getTimes()
  },
  // 在Vue实例销毁前,清除我们的定时器
  beforeDestroy() {
    if (this.times) {
      clearInterval(this.getTimesInterval); 
    }
  },
  methods: {
    getTimes(){
      setInterval(this.getTimesInterval, 1000);
    },
    getTimesInterval:function() {
      let _this = this;
      let year = new Date().getFullYear(); //获取当前时间的年份
      let month = new Date().getMonth() + 1; //获取当前时间的月份
      let day = new Date().getDate(); //获取当前时间的天数
      let hours = new Date().getHours(); //获取当前时间的小时
      let minutes = new Date().getMinutes(); //获取当前时间的分数
      let seconds = new Date().getSeconds(); //获取当前时间的秒数
      //当小于 10 的是时候,在前面加 0
      if (hours < 10) {
        hours = "0" + hours;
      }
      if (minutes < 10) {
        minutes = "0" + minutes;
      }
      if (seconds < 10) {
        seconds = "0" + seconds;
      }
      //拼接格式化当前时间
      _this.times = year + "-" + month + "-" + day + " " + hours + ":" + minutes + ":" + seconds;
    },
  }
};
</script>

<style scoped>
</style>

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • vue-cli创建项目时由esLint校验导致报错或警告的问题及解决

    vue-cli创建项目时由esLint校验导致报错或警告的问题及解决

    这篇文章主要介绍了vue-cli创建项目时由esLint校验导致报错或警告的问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • element-ui tree 异步树实现勾选自动展开、指定展开、指定勾选功能

    element-ui tree 异步树实现勾选自动展开、指定展开、指定勾选功能

    这篇文章主要介绍了element-ui tree 异步树实现勾选自动展开、指定展开、指定勾选,项目中用到了vue的element-ui框架,用到了el-tree组件,由于数据量很大,使用了数据懒加载模式,即异步树,需要的朋友可以参考下
    2022-08-08
  • vue3+vite+ts使用require.context问题

    vue3+vite+ts使用require.context问题

    这篇文章主要介绍了vue3+vite+ts使用require.context问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • vue项目使用cdn加速减少webpack打包体积

    vue项目使用cdn加速减少webpack打包体积

    通过压缩代码的手段可减小网络传输的大小,但实际上最影响用户体验的还是网页首次打开时的加载等待,其根本原因是网络传输过程耗时较大,这篇文章主要给大家介绍了关于vue项目使用cdn加速减少webpack打包体积的相关资料,需要的朋友可以参考下
    2022-08-08
  • Vue 实现CLI 3.0 + momentjs + lodash打包时优化

    Vue 实现CLI 3.0 + momentjs + lodash打包时优化

    今天小编就为大家分享一篇Vue 实现CLI 3.0 + momentjs + lodash打包时优化,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-11-11
  • 一文带你搞懂Vue3.5的响应式重构

    一文带你搞懂Vue3.5的响应式重构

    在Vue3.5版本中最大的改动就是响应式重构,重构后性能竟然炸裂的提升了56%,本文我们来讲讲使用双向链表后,Vue内部是如何实现依赖收集和依赖触发的,感兴趣的可以了解下
    2024-11-11
  • vue-cli webpack 引入jquery的方法

    vue-cli webpack 引入jquery的方法

    小编使用的是webpack模板在vue-cli生成的工程中引入jquery的方法,首先在package.json里的dependencies加入"jquery" : "^2.2.3",然后install,具体内容详情大家参考下本文
    2018-01-01
  • Vue操作DOM解决显示位置问题

    Vue操作DOM解决显示位置问题

    这篇文章主要介绍了Vue操作DOM解决显示位置问题,文中通过代码示例讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-12-12
  • Vue模仿ElementUI的form表单实例代码

    Vue模仿ElementUI的form表单实例代码

    这篇文章主要给大家介绍了关于Vue模仿ElementUI的form表单的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • Vue keepAlive页面强制刷新方式

    Vue keepAlive页面强制刷新方式

    这篇文章主要介绍了Vue keepAlive页面强制刷新方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05

最新评论