feat: refine merged venue home and auth states

This commit is contained in:
gqt
2026-06-09 11:59:50 +08:00
parent 4c20371c6d
commit 11fe7399f3
8 changed files with 212 additions and 65 deletions
@@ -1,10 +1,12 @@
<template>
<view class="profile-page container">
<view v-if="!session.isLoggedIn" class="unlogged">
<text class="brand">星河综合运动中心</text>
<text class="desc">登录后查看余额订单门票权益与个人资料</text>
<button class="primary-button login-btn" @tap="login">微信一键登录</button>
</view>
<StatePanel
v-if="!session.isLoggedIn"
primary-text="微信一键登录"
type="login"
:show-mark="false"
@primary="login"
/>
<block v-else>
<view class="user-profile-hero" @tap="go('/pages/comprehensive/profile/detail')">
@@ -74,6 +76,7 @@
import { computed, onMounted } from 'vue'
import { useComprehensiveSessionStore } from '@/modules/comprehensive/stores/session'
import VenueTabBar from '@/components/VenueTabBar.vue'
import StatePanel from '@/components/ice/StatePanel.vue'
const session = useComprehensiveSessionStore()
const avatarInitial = computed(() => (session.member?.nickname || '用户').slice(0, 1))
@@ -105,33 +108,6 @@ const go = (url) => {
</script>
<style lang="scss" scoped>
.unlogged {
min-height: 80vh;
padding-top: 180rpx;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
}
.brand {
color: $text-color-main;
font-size: 42rpx;
font-weight: 900;
letter-spacing: 2rpx;
}
.desc {
margin-top: $spacing-md;
color: $text-color-muted;
font-size: 26rpx;
}
.login-btn {
width: 520rpx;
margin-top: 100rpx;
}
.user-profile-hero {
display: flex;
align-items: center;