diff --git a/src/pages/index/index.vue b/src/pages/index/index.vue index 8c5bc51..34834d0 100644 --- a/src/pages/index/index.vue +++ b/src/pages/index/index.vue @@ -44,6 +44,19 @@ + + + + + {{ item.label }} + + + @@ -125,6 +138,18 @@ import { ref, computed } from 'vue' import { scenicSpots } from '../../data/scenic-spots' import type { ScenicSpotItem } from '../../data/scenic-spots' +/** 金刚区 */ +const quickActions = [ + { label: '我要绑卡', icon: '/static/icon/card.svg' }, + { label: '我要预约', icon: '/static/icon/reserve.svg' }, + { label: '我要入园', icon: '/static/icon/check.svg' }, + { label: '常见问题', icon: '/static/icon/faq.svg' }, +] + +function onQuickAction(item: { label: string }) { + uni.showToast({ title: `${item.label}功能开发中`, icon: 'none' }) +} + /** 公告数据(mock,后续接 API) */ const announcements = ref([ { id: 1, type: 'important', typeLabel: '重要', content: '赣湘全域旅游年卡限时优惠,工会会员专享¥300/套卡!' }, @@ -320,11 +345,48 @@ function goMore() { color: $color-muted-foreground; } +/* ============================================ + Quick actions — 金刚区 + ============================================ */ +.quick-grid { + display: flex; + justify-content: space-between; + margin: $spacing-3; + padding: $spacing-3 0; + background: $color-card; + border-radius: 16rpx; + box-shadow: $shadow-sm; +} + +.quick-item { + flex: 1; + display: flex; + flex-direction: column; + align-items: center; + gap: 12rpx; + transition: transform $transition-fast; + + &:active { + transform: scale(0.92); + } +} + +.quick-icon-img { + width: 88rpx; + height: 88rpx; +} + +.quick-label { + font-size: 24rpx; + color: $color-foreground; + font-weight: $font-weight-medium; +} + /* ============================================ Promo card — landscape photo hero card ============================================ */ .promo-wrap { - padding: $spacing-3; + padding: 0 $spacing-3 $spacing-3; } .promo { diff --git a/src/static/icon/card.svg b/src/static/icon/card.svg new file mode 100644 index 0000000..26fe501 --- /dev/null +++ b/src/static/icon/card.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/src/static/icon/check.svg b/src/static/icon/check.svg new file mode 100644 index 0000000..bb47347 --- /dev/null +++ b/src/static/icon/check.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/src/static/icon/faq.svg b/src/static/icon/faq.svg new file mode 100644 index 0000000..bc93d14 --- /dev/null +++ b/src/static/icon/faq.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/src/static/icon/reserve.svg b/src/static/icon/reserve.svg new file mode 100644 index 0000000..dc89929 --- /dev/null +++ b/src/static/icon/reserve.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/src/static/icon/scenic.svg b/src/static/icon/scenic.svg new file mode 100644 index 0000000..6a0f437 --- /dev/null +++ b/src/static/icon/scenic.svg @@ -0,0 +1,9 @@ + + + + + + + + +