feat(fam-ui): 各页面加载状态 - 数据到达前不再是空白/半截页面
新增 Spinner 组件,接入时间轴/AI对话历史/人物管理/统计图表/模型统计/ 服务状态 6 个页面。People.vue 特殊处理:命名或合并后触发的刷新不重新 显示整页 Spinner(此时列表已有数据,会闪一下丢失滚动位置),只有首次 加载(列表为空)才转圈。ServiceStatus.vue 同理,手动点刷新只变按钮文 字,不重新蒙一层 Spinner。
This commit is contained in:
15
fam-ui/src/components/Spinner.vue
Normal file
15
fam-ui/src/components/Spinner.vue
Normal file
@@ -0,0 +1,15 @@
|
||||
<script setup>
|
||||
defineProps({
|
||||
text: { type: String, default: '加载中…' },
|
||||
})
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div class="flex flex-col items-center justify-center gap-3 py-16 text-text-mute">
|
||||
<svg class="h-6 w-6 animate-spin text-accent" viewBox="0 0 24 24" fill="none">
|
||||
<circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4" />
|
||||
<path class="opacity-90" fill="currentColor" d="M4 12a8 8 0 0 1 8-8V0C5.373 0 0 5.373 0 12h4z" />
|
||||
</svg>
|
||||
<span class="text-sm">{{ text }}</span>
|
||||
</div>
|
||||
</template>
|
||||
Reference in New Issue
Block a user