feat: 新用户默认昵称及个人中心加载状态修复

- 新用户注册时随机生成普拉提主题默认昵称(16 个可选)
- 修复 App 启动后个人中心首次进入不展示用户信息的 bug
  - loggedIn 改为仅依赖 token 是否存在
  - 新增 hasProfile 判断用户数据是否已加载
  - 未加载时显示骨架屏而非空白
- 抽离随机函数为可注入依赖,消除 Math.random 测试耦合
This commit is contained in:
richarjiang
2026-04-05 10:21:58 +08:00
parent 982e569fa3
commit 640cfbf467
5 changed files with 89 additions and 11 deletions

View File

@@ -3,6 +3,7 @@
<!-- User card -->
<UserCard
:logged-in="loggedIn"
:has-profile="hasProfile"
:user="user"
:stats="stats"
:memberships="memberships"
@@ -35,7 +36,7 @@ import UserCard from '../../components/UserCard.vue'
import ProfileMenu from '../../components/ProfileMenu.vue'
const userStore = useUserStore()
const { loggedIn, user, stats, memberships, isAdmin } = storeToRefs(userStore)
const { loggedIn, hasProfile, user, stats, memberships, isAdmin } = storeToRefs(userStore)
const loginLoading = ref(false)