feat: 景区详情页优化 + 代码质量修复 + 首页适配

- 详情页:地图按钮改为复制地址,电话点击直接拨号
- 详情页:移除免X次/年徽章,增加信息卡片与卡种卡片间距
- 详情页:运营状态实时判断(根据营业时间自动显示营业中/已闭园)
- 详情页:轮播圆点仅多图时显示,加大尺寸+投影,z-index置顶
- 详情页:景区电话箭头靠右对齐
- 首页:热门景点两列布局改用padding方案,修复小屏手机单列显示
- 代码质量:card/order API移入分包,消除主包未使用JS文件
- 代码质量:manifest启用minified和lazyCodeLoading
- 构建:vite配置静默Sass弃用警告

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
jacobxu666
2026-06-25 19:19:40 +08:00
co-authored by Claude
parent ee2fd39dcd
commit 5524d78229
14 changed files with 8682 additions and 64 deletions
+22 -16
View File
@@ -107,21 +107,22 @@
:key="spot.id"
class="spot animate-fade-in-up"
:class="`stagger-${Math.min(idx + 4, 10)}`"
@click="goSpot(spot)"
>
<view class="spot-cover">
<image class="spot-img" :src="spot.image" mode="aspectFill" />
<view class="spot-region">
<view class="pin-dot" />
<text>{{ spot.region }}</text>
<view class="spot-inner" @click="goSpot(spot)">
<view class="spot-cover">
<image class="spot-img" :src="spot.image" mode="aspectFill" />
<view class="spot-region">
<view class="pin-dot" />
<text>{{ spot.region }}</text>
</view>
</view>
</view>
<view class="spot-body">
<text class="spot-name">{{ spot.name }}</text>
<view class="spot-meta">
<text class="spot-price">¥{{ spot.price }}</text>
<view class="spot-benefit">
<text>{{ spot.benefit }}</text>
<view class="spot-body">
<text class="spot-name">{{ spot.name }}</text>
<view class="spot-meta">
<text class="spot-price">¥{{ spot.price }}</text>
<view class="spot-benefit">
<text>{{ spot.benefit }}</text>
</view>
</view>
</view>
</view>
@@ -588,15 +589,20 @@ function goMore() {
color: $color-muted-foreground;
}
/* Spots grid — 2 column */
/* Spots grid — 2 column (避免 gap 兼容问题,用 padding 模拟间距) */
.spots-grid {
display: flex;
flex-wrap: wrap;
gap: $spacing-2;
margin: 0 (-$spacing-1);
}
.spot {
width: calc(50% - #{$spacing-1});
width: 50%;
padding: $spacing-1;
box-sizing: border-box;
}
.spot-inner {
background: $color-card;
border-radius: $radius-lg;
overflow: hidden;