feat: 支持游客免登录浏览核心页面

未登录用户可先浏览衣橱、穿搭、运势、分享等内容,登录改为用户主动选择,并在登录页增加协议勾选确认与暂不登录入口。
This commit is contained in:
2026-09-16 21:44:04 +08:00
parent c07a969642
commit 45222317af
47 changed files with 996 additions and 12150 deletions
+41 -4
View File
@@ -16,6 +16,14 @@
<view class="display">穿搭</view>
</view>
<!-- 游客态提示条:未登录也可先浏览,登录由用户自行选择 -->
<view wx:if="{{guest}}" class="guest-bar" bindtap="onGuestLogin">
<view class="icon icon-lock"></view>
<text class="gb-t">浏览模式 · 以下为示例穿搭</text>
<text class="gb-a">登录</text>
<view class="icon icon-chevron-right"></view>
</view>
<!-- 下划线式文字分段 -->
<view class="segbar">
<view class="seg">
@@ -32,12 +40,12 @@
<view class="ae-t">AI 穿搭</view>
<view class="ae-s">AI 生成的搭配在这里保存与管理</view>
</view>
<text wx:if="{{pendingCount > 0}}" class="pill pill--ink">{{pendingCount}} 套待保存</text>
<text wx:if="{{!guest && pendingCount > 0}}" class="pill pill--ink">{{pendingCount}} 套待保存</text>
<view class="icon icon-chevron-right ae-ch"></view>
</view>
<!-- 骨架屏 -->
<view wx:if="{{loading}}" class="of-skel">
<view wx:if="{{!guest && loading}}" class="of-skel">
<view class="of-skel-item" wx:for="{{[1, 2]}}" wx:key="*this">
<view class="sk sk-img sk-cover"></view>
<view class="sk sk-ln" style="width: 44%;"></view>
@@ -47,7 +55,7 @@
<!-- 空态 -->
<empty-state
wx:elif="{{!list.length}}"
wx:elif="{{!guest && !list.length}}"
icon="icon-shirt"
title="{{activeTab === 0 ? '还没有穿搭' : activeTab === 1 ? '还没有收藏的穿搭' : '还没有公开的穿搭'}}"
desc="{{activeTab === 0 ? '从衣橱挑几件,搭一套吧' : activeTab === 1 ? '在社区或 AI 推荐中点亮小星星,喜欢的穿搭会出现在这里' : '把喜欢的穿搭公开到社区,让大家看到你的搭配'}}"
@@ -55,6 +63,31 @@
bind:action="onCreate"
/>
<!-- 游客态:本地示例穿搭(点击任一示例进入登录页) -->
<view wx:elif="{{guest}}" class="of-list">
<view class="of-card" wx:for="{{guestList}}" wx:key="key" bindtap="onGuestLogin">
<view class="collage collage--{{item.icons.length}}">
<view class="cg" wx:for="{{item.icons}}" wx:for-item="ic" wx:key="*this">
<view class="ph icon {{ic}}"></view>
</view>
<view class="guest-flag">示例</view>
</view>
<view class="of-trow">
<text class="of-title">{{item.name}}</text>
<text class="pill pill--line">{{item.scene}}</text>
</view>
<view class="of-desc">{{item.desc}}</view>
<view class="of-meta">
<text class="of-m">{{item.icons.length}} 件衣物</text>
<view class="spacer"></view>
<view class="of-m">
<view class="icon icon-heart"></view>
<text class="num">-</text>
</view>
</view>
</view>
</view>
<!-- 卡片流 -->
<view wx:else class="of-list">
<view
@@ -105,7 +138,11 @@
</view>
</view>
<view wx:if="{{list.length && !hasMore}}" class="foot-note">没有更多了</view>
<view wx:if="{{!guest && list.length && !hasMore}}" class="foot-note">没有更多了</view>
<view wx:if="{{guest}}" class="guest-foot" bindtap="onGuestLogin">
<text>登录后查看你的专属穿搭与收藏</text>
<text class="gf-a">去登录</text>
</view>
<view class="gap-64"></view>
</scroll-view>