feat(guest): 支持游客态浏览示例衣物与搭配

游客可点开示例衣物详情与搭配抽屉,不再在浏览路径上要求登录。
This commit is contained in:
2026-09-17 11:41:42 +08:00
parent 45222317af
commit f0503c7ad7
30 changed files with 648 additions and 127 deletions
+45 -12
View File
@@ -63,26 +63,25 @@
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 class="of-card" bindtap="onGuestOutfitTap">
<view class="collage collage--2">
<view class="cg" wx:for="{{guestOutfit.items}}" wx:key="clothes_uuid">
<image class="pic" src="{{item.processed_image}}" mode="aspectFit" />
</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>
<text class="of-title">{{guestOutfit.name}}</text>
<text class="pill pill--line">{{guestOutfit.scene}}</text>
</view>
<view class="of-desc">{{item.desc}}</view>
<view class="of-desc">{{guestOutfit.desc}}</view>
<view class="of-meta">
<text class="of-m">{{item.icons.length}} 件衣物</text>
<text class="pill">示例</text>
<text class="of-m">{{guestOutfit.items.length}} 件衣物</text>
<view class="spacer"></view>
<view class="of-m">
<view class="icon icon-heart"></view>
<text class="num">-</text>
<view class="icon icon-chevron-right"></view>
</view>
</view>
</view>
@@ -151,4 +150,38 @@
<view class="btn btn--glass" bindtap="onCreate">创建穿搭</view>
<view class="btn btn--ink" bindtap="onAiRecommend">AI 推荐</view>
</view>
<!-- 游客态示例搭配抽屉:可完整浏览示例单品,登录仅由用户主动选择 -->
<view wx:if="{{guestSheetVisible}}" class="scrim" bindtap="onGuestSheetClose"></view>
<view wx:if="{{guestSheetVisible}}" class="sheet-wrap">
<view class="sheet" catchtap="noop">
<view class="sheet-grab"></view>
<view class="sheet-hd">
<text class="sheet-t">示例搭配</text>
<text class="sheet-x" bindtap="onGuestSheetClose">关闭</text>
</view>
<view class="sheet-body">
<view class="gd-hd">
<view class="t-lg">{{guestOutfit.name}}</view>
<view class="gd-tags">
<text class="pill pill--line">{{guestOutfit.scene}}</text>
<text class="pill">示例</text>
</view>
</view>
<view class="gd-desc">{{guestOutfit.desc}}</view>
<view class="gd-items">
<view class="gd-item" wx:for="{{guestOutfit.items}}" wx:key="clothes_uuid">
<view class="gd-item-img">
<image class="pic" src="{{item.processed_image}}" mode="aspectFit" />
</view>
<view class="tile-name">{{item.name}}</view>
<view class="tile-sub">{{item.category_main}}{{item.category_sub ? ' · ' + item.category_sub : ''}}</view>
</view>
</view>
</view>
<view class="sheet-foot">
<view class="btn btn--ghost btn--block" bindtap="onGuestSheetLogin">登录后可创建你的穿搭</view>
</view>
</view>
</view>
</view>