// --- Data Fetching --- const fetchTrendData = () => { loading.value = true // 模拟 API 请求: GET /api/user/trend setTimeout(() => { const mock: UserTrend[] = [] const now = new Date() for (let i = 14; i >= 0; i--) { const d = new Date(now.getTime() - i * 24 * 60 * 60 * 1000) mock.push({ date: `${(d.getMonth() + 1).toString().padStart(2, '0')}-${d.getDate().toString().padStart(2, '0')}`, count: Math.floor(Math.random() * 50) + 20 + (i === 5 ? 100 : 0) }) } trendData.value = mock loading.value = false }, 600) } onMounted(() => { fetchTrendData() }) // 暴露刷新接口 defineExpose({ refresh: fetchTrendData })