uniapp,实时获取系统时间(动态显示)

在开发中,如果涉及到时间有关的,有可能需要把系统的时间以动态的形式展示出来。

一、页面效果

后面的秒钟是会变的,一秒改变一下,也就是说这个就是与系统时间一致的。

二、思路

我们通过new date对象,获取系统的时间,逐个获取年、月、日、时、分、秒,然后再通过字符的处理,将他们格式化为我们需要的样式。然后开启一个定时器,每一秒执行一次就可以了。

三、实现代码

html 复制代码
<template>
  <!-- 现在的时间 -->
  <view class="container">
    <view class="time-img">
      <image src="/static/image/index_pages/now.png" mode=""></image>
    </view>
    <view class="time">
      {{time}}
    </view>
  </view>
</template>

<script>
  export default {
    name: "nowTime",
    data() {
      return {
      time:''
      };
    },
    mounted() {
      var timer = setInterval(() => {
        this.getNowTime()
      },1000)
    },
    // 组件销毁时关闭定时器
    beforeDestroy() {
      clearInterval(timer)
    },
    methods: {
      //获取当前时间
      getNowTime() {
        var date = new Date();
        //年 getFullYear():四位数字返回年份
        var year = date.getFullYear(); //getFullYear()代替getYear()
        //月 getMonth():0 ~ 11
        var month = date.getMonth() + 1;
        //日 getDate():(1 ~ 31)
        var day = date.getDate();
        //时 getHours():(0 ~ 23)
        var hour = date.getHours();
        //分 getMinutes(): (0 ~ 59)
        var minute = date.getMinutes();
        //秒 getSeconds():(0 ~ 59)
        var second = date.getSeconds();
        var time = year + '-' + this.addZero(month) + '-' + this.addZero(day) + ' ' + this.addZero(hour) + ":" +this.addZero(minute) + ':' + this.addZero(second);
            this.time = time
        },
        //小于10的拼接上0字符串
        addZero(s) {
            return s < 10 ? ('0' + s) : s;
        },
      }
    }
</script>

<style scoped>
  .container {
    width: 702rpx;
    height: 84rpx;
    border: 1rpx solid #fff;
    border-radius: 20rpx;
    display: flex;
    align-items: center;
    background-color: #DAFDE6;
  }

  .time-img {
    width: 64rpx;
    height: 112rpx;
  }

  .time-img image {
    width: 100%;
    height: 100%;
    margin-top: -10px;
    margin-left: 28rpx;
  }

  .time {
    margin-left: 56rpx;
    color: #02A53C;
    font-size: 30rpx;
    font-weight: 500;
  }
</style>

代码比较简短,都可以看得懂的,不需多言,或者之前拿去使用就可以了!

相关推荐
妮妮喔妮2 分钟前
Webpack 有哪些特性?构建速度?如何优化?
前端·webpack·node.js
ST.J8 分钟前
webpack笔记
前端·笔记·webpack
Baklib梅梅27 分钟前
2025 年 8 个最佳网站内容管理系统(CMS)
前端·ruby on rails·前端框架·ruby
IT_陈寒37 分钟前
🔥5个必学的JavaScript性能黑科技:让你的网页速度提升300%!
前端·人工智能·后端
Bling_Bling_141 分钟前
面试常考:js中 Map和 Object 的区别
开发语言·前端·javascript
2501_915921431 小时前
iOS混淆工具实战 在线教育直播类 App 的课程与互动安全防护
android·安全·ios·小程序·uni-app·iphone·webview
前端小巷子1 小时前
JS实现丝滑文字滚动
前端·javascript·面试
oil欧哟1 小时前
🧐 我用 Vibe Coding 从 0 到 1 打造 AI 产品,上线一个月效果如何?有什么心得?
前端·产品·vibecoding
霍克itxt点top1 小时前
NestJS 入门到实战 前端必学服务端新趋势无密分享
前端
xiguolangzi1 小时前
1panel web服务部署
前端