系统日期如何在页面展示,框架是react或者vue3

  1. 安装插件dayjs或者moment.js

2.使用setInterval(useInterval)或者requestAnimationFrame

react项目中useInterval的代码示例:

复制代码
import React, {useState } from 'react';
import { useInterval } from "ahooks";
import moment from "moment";
const Datetimes = ({currenttime})=>{
    const [newtime,cnt]=useState(currenttime);
    useInterval(() => {
        cnt(moment().add(1, "seconds").format("YYYY-MM-DD HH:mm:ss"))
    }, 1000);
    return <span>{newtime}</span>
}

export default Datetimes;

vue3中setInterval示例:

复制代码
import { dayjs } from 'element-plus';
// 创建定时器
let intervalId;
const time = ref(dayjs().format('YYYY-MM-DD HH:mm:ss'));
onMounted(() => {
    intervalId = setInterval(() => {
        time.value = dayjs(time.value).add(1, "seconds").format("YYYY-MM-DD HH:mm:ss");
    }, 1000)
});
onUnmounted(() => {
    clearInterval(intervalId);
})

react项目中requestAnimationFrame示例:

复制代码
const [currentTime, setCurrentTime] = useState(dayjs());

  const updateClock = () => {
    setCurrentTime(dayjs()); // 更新时间
    requestAnimationFrame(updateClock); // 请求下一帧动画
  };

  useEffect(() => {
    requestAnimationFrame(updateClock); // 请求第一帧动画

    // 卸载组件时停止更新
    return () => cancelAnimationFrame(updateClock);
  }, []);
相关推荐
console.log('npc')16 分钟前
问题跟踪与知识沉淀:从任务到知识的闭环)
前端·javascript·人工智能
missile11137 分钟前
# HDR 算法 ISP 通路客制化方案(G100 / mt6789)
java·前端·javascript
挖掘狂人1 小时前
Vue nextTick 到底在等什么?一篇讲透原理与那些年踩过的坑
javascript·程序员·编程语言
万少1 小时前
Harmony 7.0 这个skill帮你自动化操作AGC
前端·javascript·后端
小大宇1 小时前
Vue知识点-ElementPlus-02图标
前端·javascript·vue.js
king王一帅2 小时前
给你的编辑器加上思维导图、流程图、白板:一套开源组件,多种文档通用
前端·vue.js·ai编程
谙忆10243 小时前
图像任务超时怎么重试:先分执行状态,再做结果验收
javascript
米米商聊13 小时前
同名附件为什么被 Map 覆盖?重复键与一对多索引
前端·javascript
kyriewen16 小时前
我把 10 道面试题答案真跑了一遍:6 道是错的
前端·javascript·面试
WebInfra16 小时前
Rspack 2.3 发布:联手 SWC 团队带来全新编译器
前端·javascript·github