Преглед изворни кода

添加计时器,更新时间

visuddhinanda пре 2 година
родитељ
комит
58ce8f0b59
1 измењених фајлова са 16 додато и 7 уклоњено
  1. 16 7
      dashboard/src/components/general/TimeShow.tsx

+ 16 - 7
dashboard/src/components/general/TimeShow.tsx

@@ -18,16 +18,25 @@ const TimeShowWidget = ({
 }: IWidgetTimeShow) => {
   const intl = useIntl(); //i18n
   const [passTime, setPassTime] = useState<string>();
-  const updateTime = () => {
-    if (typeof time !== "undefined" && time !== "") {
-      setPassTime(getPassDataTime(time));
+  const [mTime, setMTime] = useState(0);
+
+  useEffect(() => {
+    if (typeof time === "undefined") {
+      return;
     }
-  };
+    let timer = setInterval(() => {
+      setMTime((mTime) => mTime + 1);
+    }, 1000 * 60);
+    return () => {
+      clearInterval(timer);
+    };
+  }, []);
 
-  //TODO bug time no update
   useEffect(() => {
-    updateTime();
-  }, [time]);
+    if (typeof time !== "undefined" && time !== "") {
+      setPassTime(getPassDataTime(time));
+    }
+  }, [mTime, time]);
 
   if (typeof time === "undefined" || time === "") {
     return <></>;