56 lines
2.3 KiB
Plaintext
56 lines
2.3 KiB
Plaintext
<view wx:if="{{loaded}}" class="page">
|
||
<view class="close" bindtap="onClose">✕</view>
|
||
|
||
<!-- 头部成果 -->
|
||
<view class="hero">
|
||
<image wx:if="{{dogAvatar}}" class="hero-avatar" src="{{dogAvatar}}" mode="aspectFill" />
|
||
<view wx:else class="hero-avatar">🐶</view>
|
||
<view class="hero-headline">{{headline}}</view>
|
||
<view class="hero-big"><text class="big-v">{{bigValue}}</text><text wx:if="{{bigUnit}}" class="big-u"> {{bigUnit}}</text></view>
|
||
</view>
|
||
|
||
<!-- 三宫格 -->
|
||
<view class="grid3">
|
||
<view class="g"><view class="g-v">{{timeText}}</view><view class="g-k">时长</view></view>
|
||
<view class="g"><view class="g-v">{{distanceText}}</view><view class="g-k">公里</view></view>
|
||
<view class="g"><view class="g-v streak">第{{streak}}天</view><view class="g-k">连续</view></view>
|
||
</view>
|
||
|
||
<!-- 解锁成就 -->
|
||
<view wx:for="{{newAchievements}}" wx:key="key" class="ach-banner">
|
||
<text class="ach-medal">🏅</text>
|
||
<view><view class="ach-name">解锁成就 · {{item.name}}</view></view>
|
||
</view>
|
||
|
||
<!-- 选填补充 -->
|
||
<view class="section">补充(可选,跳过也能保存)</view>
|
||
<view class="note-row">
|
||
<view class="photo-add" bindtap="onPickPhoto">
|
||
<image wx:if="{{photos.length}}" class="photo-thumb" src="{{photos[0]}}" mode="aspectFill" />
|
||
<text wx:else>📷</text>
|
||
</view>
|
||
<input class="note-input" placeholder="给这次遛狗写点什么…" value="{{note}}" bindinput="onNote" />
|
||
</view>
|
||
|
||
<view class="field">
|
||
<view class="flabel">天气</view>
|
||
<view class="chips">
|
||
<view wx:for="{{weathers}}" wx:key="k" class="chip {{weather===item.k?'sel':''}}" data-k="{{item.k}}" bindtap="pickWeather">{{item.l}}</view>
|
||
</view>
|
||
</view>
|
||
<view class="field">
|
||
<view class="flabel">状态</view>
|
||
<view class="chips">
|
||
<view wx:for="{{moods}}" wx:key="k" class="chip {{mood===item.k?'sel':''}}" data-k="{{item.k}}" bindtap="pickMood">{{item.l}}</view>
|
||
</view>
|
||
</view>
|
||
|
||
<view class="actions">
|
||
<button class="btn primary" bindtap="onShare">分享图片到朋友圈</button>
|
||
<button class="btn ghost" bindtap="onDone" loading="{{submitting}}">完成</button>
|
||
</view>
|
||
|
||
<!-- 离屏 Canvas:生成分享图用 -->
|
||
<canvas type="2d" id="shareCanvas" class="share-canvas"></canvas>
|
||
</view>
|