Files
past-go/weapp/pages/timeline/timeline.wxml
T
Blizzard 8be6d9b1ab feat: add account deletion, announcements and subscription renewal
Support personal records and persistent smoking visibility. Add upload quota preflight, file cleanup, privacy entry, image caching and revision-based page refresh across the backend, admin and mini program.
2026-11-03 22:06:47 +08:00

57 lines
3.3 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<view capture-bind:tap="onLoginSubscribeTap" class="app-shell app-shell--secondary" style="{{layoutStyle}}">
<launch-transition />
<!-- pages/timeline/timeline.wxml - 左右交替记忆日 -->
<app-nav title="记忆日" back="{{true}}" />
<!-- 添加按钮 -->
<scroll-view class="page-bg tl-scroll" scroll-y bindscrolltolower="loadMore" lower-threshold="120" show-scrollbar="{{false}}" bounces="{{true}}">
<view class="container"><view class="j-row"><view><text class="j-eyebrow">MEMORIES OF US</text><text class="j-page-title">值得记住的日子</text></view><button class="j-button j-button-small" bindtap="goToPublish">+ 记忆日</button></view>
<page-state wx:if="{{loading}}" kind="loading" title="正在加载" /><page-state wx:elif="{{loadError}}" kind="error" title="加载失败" description="请检查网络后重新加载" action="重试" bind:action="loadData" />
<view class="tl-list" wx:if="{{!loading && !loadError && list.length > 0}}">
<view class="tl-item {{item.side}}" wx:for="{{list}}" wx:key="id" bindtap="goToDetail" bindlongpress="deleteTimeline" data-id="{{item.id}}">
<!-- 背景图片 -->
<view class="tl-bg-wrap" wx:if="{{item.bg_image_url}}">
<image class="tl-bg" src="{{item.bg_image_url}}" mode="aspectFill" />
<view class="tl-bg-overlay"></view>
</view>
<view class="tl-card {{item.is_anniversary ? '' : 'tl-card-countdown'}} {{item.bg_image_url ? 'tl-card-has-bg' : ''}}">
<view class="tl-creator">
<image wx:if="{{item.creator_avatar}}" class="tl-avatar" src="{{item.creator_avatar}}" mode="aspectFill" />
<view wx:else class="tl-avatar-placeholder">{{item.creator_initial}}</view>
<text class="tl-name">{{item.creator_name}}</text>
<text class="tl-date-tag {{item.is_anniversary ? 'tl-date-tag-anniversary' : 'tl-date-tag-countdown'}}">{{item.date_tag}}</text>
<text class="tl-date">{{item.event_date}}</text>
</view>
<view class="tl-card-head">
<text class="tl-title">{{item.title}}</text>
</view>
<view class="tl-card-head" wx:if="{{item.location}}">
<text class="tl-location">📍 {{item.location}}</text>
</view>
<view class="tl-card-head" wx:if="{{item.content}}">
<text class="tl-note">💬 {{item.content}}</text>
</view>
<view class="tl-days-wrap">
<text class="tl-repeat" wx:if="{{item.repeat_label}}">{{item.repeat_label}}</text>
<text class="tl-days {{item.is_anniversary ? '' : 'tl-days-countdown'}}">{{item.days_text}}</text>
</view>
</view>
</view>
</view>
<view class="empty-state" wx:if="{{!loading && !loadError && !list.length}}">
<text style="font-size:72rpx;">📅</text>
<text>还没有记忆日事件</text>
<text style="font-size:24rpx;color:#bbb;">点击上方添加记忆日</text>
</view>
</view>
<view class="j-pagination" wx:if="{{!loading && !loadError && total > 0}}"><text wx:if="{{loadingMore}}">正在加载…</text><text wx:elif="{{moreError}}" bindtap="loadMore">加载失败,点击重试</text><text wx:elif="{{hasMore}}" bindtap="loadMore">加载更多</text><text wx:else>已加载全部</text></view>
</scroll-view>
</view>