feat: 样式调整
This commit is contained in:
@@ -2,20 +2,34 @@
|
||||
<view class="detail-page">
|
||||
|
||||
<!-- 频道信息头部 -->
|
||||
<view class="hero" style="background: linear-gradient(135deg, {{domain.bgColor || '#FF9D42'}}, {{domain.bgColorEnd || '#FFB366'}});">
|
||||
<view class="hero" style="background: linear-gradient(135deg, {{domain.bgColor || '#FF9E6D'}}, {{domain.bgColorEnd || '#FFB366'}});">
|
||||
|
||||
<!-- 频道信息 -->
|
||||
<view class="hero-content">
|
||||
<text class="hero-icon">{{domain.cover || domain.icon || '📻'}}</text>
|
||||
<text class="hero-name">{{domain.name}}</text>
|
||||
<text class="hero-tag">{{domain.tag || domain.description || ''}}</text>
|
||||
<text class="hero-tag">{{domain.tag || ''}}</text>
|
||||
<!-- 频道描述 -->
|
||||
<text wx:if="{{domain.description}}" class="hero-desc">{{domain.description}}</text>
|
||||
<!-- 数据行:订阅人数 + 节目数 -->
|
||||
<view class="hero-stats">
|
||||
<text class="hero-stat">{{domain.subscriberCount || 0}} 人已订阅</text>
|
||||
<text class="hero-stat-dot">·</text>
|
||||
<text class="hero-stat">{{domainContents.length || 0}} 期节目</text>
|
||||
</view>
|
||||
|
||||
<!-- ═══ 按钮区 ═══ -->
|
||||
|
||||
<!-- 0. 可播放(VIP / 免费 / 已订阅)→ 直接收听 -->
|
||||
<block wx:if="{{canPlay}}">
|
||||
<button class="hero-sub-btn free-btn" bindtap="goFirstProgram">
|
||||
<text>▶ 开始收听</text>
|
||||
</button>
|
||||
<view class="hero-action-row">
|
||||
<button class="hero-sub-btn free-btn" bindtap="goFirstProgram">
|
||||
<text>▶ 开始收听</text>
|
||||
</button>
|
||||
<button class="hero-share-inline-btn tap-active" open-type="share">
|
||||
<t-icon name="share" size="44rpx" color="#FFF" />
|
||||
</button>
|
||||
</view>
|
||||
<!-- 副标签 -->
|
||||
<text wx:if="{{isVip}}" class="hero-expired">👑 VIP 会员畅享</text>
|
||||
<text wx:elif="{{isFree}}" class="hero-expired">🎁 永久免费频道</text>
|
||||
@@ -31,33 +45,53 @@
|
||||
<!-- 1. 免费频道(但不可播放,理论上不会到这里) -->
|
||||
<block wx:elif="{{isFree}}">
|
||||
<view class="hero-badge free-badge">🎁 永久免费</view>
|
||||
<button class="hero-sub-btn free-btn" bindtap="onSubscribe">
|
||||
<text>▶ 开始收听</text>
|
||||
</button>
|
||||
<view class="hero-action-row">
|
||||
<button class="hero-sub-btn free-btn" bindtap="onSubscribe">
|
||||
<text>▶ 开始收听</text>
|
||||
</button>
|
||||
<button class="hero-share-inline-btn tap-active" open-type="share">
|
||||
<t-icon name="share" size="44rpx" color="#FFF" />
|
||||
</button>
|
||||
</view>
|
||||
</block>
|
||||
|
||||
<!-- 2. VIP专享 -->
|
||||
<block wx:elif="{{isVipOnly}}">
|
||||
<view class="hero-badge vip-badge">👑 VIP专享</view>
|
||||
<button class="hero-sub-btn vip-btn" bindtap="onSubscribe">
|
||||
<text>开通 VIP 解锁</text>
|
||||
</button>
|
||||
<view class="hero-action-row">
|
||||
<button class="hero-sub-btn vip-btn" bindtap="onSubscribe">
|
||||
<text>开通 VIP 解锁</text>
|
||||
</button>
|
||||
<button class="hero-share-inline-btn tap-active" open-type="share">
|
||||
<t-icon name="share" size="44rpx" color="#FFF" />
|
||||
</button>
|
||||
</view>
|
||||
</block>
|
||||
|
||||
<!-- 3. 订阅已过期 -->
|
||||
<block wx:elif="{{isExpired}}">
|
||||
<view class="hero-badge expired-badge">⏰ 订阅已到期</view>
|
||||
<button class="hero-sub-btn renew-btn" bindtap="onSubscribe">
|
||||
<text>续费订阅</text>
|
||||
</button>
|
||||
<view class="hero-action-row">
|
||||
<button class="hero-sub-btn renew-btn" bindtap="onSubscribe">
|
||||
<text>续费订阅</text>
|
||||
</button>
|
||||
<button class="hero-share-inline-btn tap-active" open-type="share">
|
||||
<t-icon name="share" size="44rpx" color="#FFF" />
|
||||
</button>
|
||||
</view>
|
||||
<text class="hero-expired">已于 {{expiredAt}} 到期</text>
|
||||
</block>
|
||||
|
||||
<!-- 4. 未订阅付费频道 -->
|
||||
<block wx:else>
|
||||
<button class="hero-sub-btn" bindtap="onSubscribe">
|
||||
<text>订阅频道</text>
|
||||
</button>
|
||||
<view class="hero-action-row">
|
||||
<button class="hero-sub-btn" bindtap="onSubscribe">
|
||||
<text>订阅频道</text>
|
||||
</button>
|
||||
<button class="hero-share-inline-btn tap-active" open-type="share">
|
||||
<t-icon name="share" size="44rpx" color="#FFF" />
|
||||
</button>
|
||||
</view>
|
||||
</block>
|
||||
</view>
|
||||
|
||||
@@ -123,8 +157,10 @@
|
||||
<text class="item-title {{item._isThisPlaying ? 'text-primary' : ''}}">{{item.title}}</text>
|
||||
<view class="item-meta">
|
||||
<text>{{item._dateDot}}</text>
|
||||
<text class="meta-dot">·</text>
|
||||
<text>{{item.durationText}}</text>
|
||||
<block wx:if="{{item.durationText}}">
|
||||
<text class="meta-dot">·</text>
|
||||
<text>{{item.durationText}}</text>
|
||||
</block>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -141,7 +177,7 @@
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view style="height: 200rpx;"></view>
|
||||
<view class="player-bottom-spacer"></view>
|
||||
<global-player />
|
||||
<t-message id="t-message" />
|
||||
</view>
|
||||
|
||||
Reference in New Issue
Block a user