From 62d3c30abbabef00b6778bea04093f35401d0af8 Mon Sep 17 00:00:00 2001 From: Frontend Developer Date: Tue, 10 Mar 2026 09:39:41 +0000 Subject: [PATCH] =?UTF-8?q?=E5=89=8D=E7=AB=AF:=20=E6=B7=BB=E5=8A=A0useStat?= =?UTF-8?q?s=E7=BB=9F=E8=AE=A1=E9=92=A9=E5=AD=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/renderer/hooks/useStats.js | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 frontend/src/renderer/hooks/useStats.js diff --git a/frontend/src/renderer/hooks/useStats.js b/frontend/src/renderer/hooks/useStats.js new file mode 100644 index 0000000..2e78e76 --- /dev/null +++ b/frontend/src/renderer/hooks/useStats.js @@ -0,0 +1,23 @@ +import { useState, useEffect } from 'react'; +import api from '../utils/api'; + +export const useStats = () => { + const [stats, setStats] = useState(null); + const [loading, setLoading] = useState(false); + + const fetchStats = async () => { + setLoading(true); + try { + const data = await api.get('/api/stats'); + setStats(data); + } finally { + setLoading(false); + } + }; + + useEffect(() => { fetchStats(); }, []); + + return { stats, loading, refetch: fetchStats }; +}; + +export default useStats;