优化首页、场馆、折扣、权益、我的、登录页面UI及交互体验

- 首页:金刚区添加文字标签、活动指南卡片自适应宽度、字体调整
- 场馆列表:去掉导航栏、添加返回按钮、优化加载提示
- 折扣列表:样式与场馆列表统一
- 场馆详情:合并信息与地址容器、添加分割线和返回按钮
- 权益页面:banner渐变圆角、统计卡片优化、空状态引导、Tab列表优化
- 我的页面:主色调统一、渐变背景、菜单样式优化
- 登录页面:协议链接可跳转、添加返回按钮
- 移除VConsole调试按钮
- 底部导航栏线条颜色调整
This commit is contained in:
jacobxu666
2026-07-17 09:54:22 +08:00
parent 07b3e89e4c
commit 15936574ba
12 changed files with 434 additions and 108 deletions
+38 -16
View File
@@ -9,6 +9,7 @@
<view class="king-area">
<view class="king-item" v-for="(item, index) in kingList" :key="index" @click="item.isRights ? goRights() : goPage(item.url)">
<image class="king-icon" :src="item.icon" mode="widthFix"></image>
<text class="king-text">{{ item.text }}</text>
</view>
</view>
@@ -37,10 +38,10 @@
data() {
return {
kingList: [
{ icon: 'https://aliyunoss.hn12301.net/hhrs/hhrs_wlcg.png', url: '/pages/venue/venue' },
{ icon: 'https://aliyunoss.hn12301.net/hhrs/hhrs_shzk.png', url: '/pages/discount/discount' },
{ icon: 'https://aliyunoss.hn12301.net/hhrs/hhrs_qyb.png', url: '/pages/rights/rights', isRights: true },
{ icon: 'https://aliyunoss.hn12301.net/hhrs/hhrs_zjmd.png', url: '/pages/winners/winners' }
{ icon: 'https://aliyunoss.hn12301.net/hhrs/hhrs_wlcg.png', text: '文旅场馆', url: '/pages/venue/venue' },
{ icon: 'https://aliyunoss.hn12301.net/hhrs/hhrs_shzk.png', text: '商户折扣', url: '/pages/discount/discount' },
{ icon: 'https://aliyunoss.hn12301.net/hhrs/hhrs_qyb.png', text: '权益包', url: '/pages/rights/rights', isRights: true },
{ icon: 'https://aliyunoss.hn12301.net/hhrs/hhrs_zjmd.png', text: '中奖名单', url: '/pages/winners/winners' }
],
guideList: [
{
@@ -93,10 +94,17 @@
</script>
<style>
page {
height: 100%;
overflow: hidden;
}
.page {
height: 100vh;
background-color: #f5f5f5;
overflow: hidden;
display: flex;
flex-direction: column;
}
.banner-img {
@@ -109,7 +117,7 @@
width: 100%;
display: flex;
justify-content: space-between;
align-items: center;
align-items: flex-start;
background-color: #ffffff;
padding: 24rpx;
box-sizing: border-box;
@@ -118,6 +126,7 @@
.king-item {
width: 25%;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
}
@@ -125,19 +134,31 @@
.king-icon {
width: 100rpx;
height: 132rpx;
margin-bottom: 12rpx;
}
.king-text {
font-family: 'Source Han Sans SC', 'Source Han Sans CN', 'Noto Sans CJK SC', 'PingFang SC', 'Microsoft YaHei', sans-serif;
font-size: 24rpx;
color: #333333;
text-align: center;
}
/* 活动指南 */
.guide-section {
flex: 1;
background-color: #ffffff;
margin-top: 10rpx;
padding: 24rpx 20rpx 30rpx;
overflow: hidden;
display: flex;
flex-direction: column;
}
.section-title {
display: flex;
align-items: center;
margin-bottom: 20rpx;
padding: 24rpx 20rpx 0 24px;
}
.title-line {
@@ -149,7 +170,7 @@
}
.title-text {
font-size: 30rpx;
font-size: 14px;
font-weight: bold;
color: #333333;
}
@@ -157,19 +178,20 @@
.guide-list {
display: flex;
flex-direction: column;
gap: 20rpx;
gap: 12px;
padding: 0 20rpx 30rpx;
}
.guide-card {
position: relative;
width: 702rpx;
width: 100%;
height: 252rpx;
border-radius: 16rpx;
overflow: hidden;
}
.guide-bg {
width: 702rpx;
width: 100%;
height: 252rpx;
border-radius: 16rpx;
}
@@ -187,14 +209,14 @@
}
.guide-title {
font-size: 30rpx;
font-size: 16px;
font-weight: bold;
color: #0088FF;
margin-bottom: 10rpx;
}
.guide-sub {
font-size: 22rpx;
font-size: 12px;
color: #949AA0;
margin-bottom: 16rpx;
}
@@ -202,10 +224,10 @@
.guide-tag {
display: inline-block;
width: fit-content;
padding: 4rpx 16rpx;
background-color: #00C0E8;
color: #ffffff;
font-size: 20rpx;
padding: 4px 10px;
background-color: #e6f2ff;
color: #0088FF;
font-size: 12px;
border-radius: 6rpx;
}
+40 -6
View File
@@ -23,14 +23,20 @@
<view class="login-btn" @click="onLogin">立即登录</view>
<!-- 协议区 -->
<view class="agreement-area" @click="agreed = !agreed">
<view class="checkbox" :class="{ checked: agreed }">
<view class="agreement-area">
<view class="checkbox" :class="{ checked: agreed }" @click="agreed = !agreed">
<text class="check-icon" v-if="agreed">✓</text>
</view>
<text class="agreement-text">我已阅读并同意</text>
<text class="agreement-link">《用户协议》</text>
<text class="agreement-text">和</text>
<text class="agreement-link">《隐私协议》</text>
<text class="agreement-text" @click="agreed = !agreed">我已阅读并同意</text>
<text class="agreement-link" @click.stop="goAgreement('user')">《用户协议》</text>
<text class="agreement-text" @click="agreed = !agreed">和</text>
<text class="agreement-link" @click.stop="goAgreement('privacy')">《隐私协议》</text>
</view>
<!-- 返回按钮 -->
<view class="back-btn" @click="goBack">
<image class="back-icon" src="https://zhihuiyou.oss-cn-shenzhen.aliyuncs.com/hhrs/hhrs_back.png" mode="aspectFit"></image>
<text class="back-text">返回上一页</text>
</view>
</view>
</template>
@@ -123,6 +129,13 @@ export default {
}).catch(() => {
uni.showToast({ title: '登录失败', icon: 'none' })
})
},
goAgreement(type) {
const url = type === 'user' ? '/pages/agreement/user' : '/pages/agreement/privacy'
uni.navigateTo({ url })
},
goBack() {
uni.navigateBack()
}
}
}
@@ -250,4 +263,25 @@ export default {
font-size: 24rpx;
color: #0088FF;
}
/* 返回按钮 */
.back-btn {
position: fixed;
left: 24px;
bottom: 50px;
display: flex;
flex-direction: column;
align-items: center;
gap: 4px;
}
.back-icon {
width: 44px;
height: 44px;
}
.back-text {
font-size: 12px;
color: #666666;
}
</style>