Files
vpUni/.svn/pristine/eb/ebe6d6db3f26ee9dd9fdecb51d919b0423f97e94.svn-base
2026-03-09 16:39:03 +08:00

234 lines
8.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.
<template>
<view>
<view :style="{'height':topHeight+'rpx'}"
style=" position: fixed; top: 0; z-index: 2; width: 100%; background-color: #fff; ">
<view class="" :style="{'margin-top':top+'rpx','height':height+'rpx','line-height':height+'rpx'}"
style=" margin-left: 40rpx; display: flex; align-items: center;">
<img :src="Service.GetIconImg('/static/index/index/location.png')" style="width: 40rpx; height: 40rpx;"
alt="" />
<text style="margin-left: 15rpx; font-size: 26rpx; font-weight: 600; ">许昌市魏都区</text>
</view>
<!-- 内容 -->
<view class="" style="margin: 40rpx 20rpx">
<up-swiper imgMode='heightFix' :list="swiperList" height='140' @change="e => current = e.current" :autoplay="false">
<template #indicator>
<view class="indicator">
<view class="indicator__dot" v-for="(item, index) in swiperList" :key="index"
:class="[index === current && 'indicator__dot--active']">
</view>
</view>
</template>
</up-swiper>
</view>
<view class="" style=" display: flex; align-items: center; justify-content: space-around; margin: 20rpx 0; background-color: #fff; padding: 20rpx">
<view v-for="(item, index) in tabList" @click="chooseTab(index)" style="display: flex; flex-direction: column; align-items: center; justify-content: center;" :key="index">
<view class="" :class="{tabimgActive:index==tabCurrent,tabimg: index!=tabCurrent }" style=" border-radius: 50%; display: flex; align-items: center; justify-content: center; height: 80rpx; width: 80rpx; " >
<img :src="Service.GetIconImg( index==tabCurrent? item.imged:item.img)" style="width: 45rpx; height: 45rpx; " ></img>
</view>
<view :class="{tabActivefont:index==tabCurrent,tabfont:index!=tabCurrent}" style="font-size: 26rpx; margin-top: 15rpx;" class="">
{{item.name}}
</view>
</view>
</view>
<view class="" style="margin-top: 40rpx; background-color: #fff; padding: 20rpx; " >
<view class="" style=" margin: 10rpx 0; display: flex; align-items: center; justify-content: space-between;" >
<view class="" style="font-weight: 600; font-size: 32rpx;" >
热门商家
</view>
<view class="" style="display: flex;align-items: center;" >
<text style="color: #666666;margin-right: 10rpx; font-size: 28rpx; " >查看更多</text>
<up-icon name="arrow-right" size="14" color='#666666' :bold='true' ></up-icon>
</view>
</view>
<view class="" style="display: flex; padding: 20rpx; margin-top: 20rpx; border-radius: 20rpx; box-shadow: 0 0 10rpx 4rpx #e2e2e2; " >
<img :src="Service.GetMateUrlByImg('/static/dele/dele1.jpg')" style=" border-radius: 20rpx; width: 140rpx; height: 140rpx;" alt="" />
<view class="" style=" flex: 1; margin-left: 20rpx; display: flex; flex-direction: column; justify-content: space-between; " >
<view class="" style="display: flex; align-items: center;" >
<view class="" style="font-weight: 700; font-size: 32rpx;" >
老北京炸酱面
</view>
<view class="tag" style="color: #fff; border-radius: 12rpx; background-color: #FF6B35; padding: 4rpx 20rpx; " >
新店
</view>
<view class="tag" style="color: #fff; border-radius: 12rpx; background-color: #FF4D4F; padding: 4rpx 20rpx; " >
人气榜
</view>
</view>
<view class="" style="display: flex;align-items: center;" >
<up-rate count="1" activeColor='#FF6B35' size='16' :readonly='true' ></up-rate>
<text style="color: #666666; font-size: 26rpx;" >3.8</text>
<text style="margin-left: 10rpx;color: #666666; font-size: 26rpx; " >月售892单</text>
</view>
<view class="" style="display: flex; align-items: center; justify-content: space-between; " >
<view class="" style="display: flex;align-items: center;" >
<up-icon name="map" color="#666666" size="18"></up-icon>
<text style="color: #666666; margin-left: 12rpx; font-size: 26rpx;" >0.8km</text>
</view>
<view class="" style="margin-right: 20rpx;" >
<text style="font-size: 28rpx;font-weight: 600; color: #FF6B35; " > ¥58/人 </text>
</view>
</view>
</view>
</view>
</view>
<view class="" style="margin-top: 40rpx; background-color: #fff; padding: 20rpx; " >
<view class="" style=" margin: 10rpx 0; display: flex; align-items: center; justify-content: space-between;" >
<view class="" style="font-weight: 600; width: 70%; font-size: 32rpx;" >
<up-notice-bar bgColor='#fff' color='#FF6B35' :text="notice"></up-notice-bar>
</view>
<view class="" style="display: flex;align-items: center;" >
<text style="color: #666666;margin-right: 10rpx; font-size: 28rpx; " >查看更多</text>
<up-icon name="arrow-right" size="14" color='#666666' :bold='true' ></up-icon>
</view>
</view>
<view class="" style="display: flex; margin-top: 20rpx; border-radius: 20rpx; " >
<image :src="Service.GetMateUrlByImg('/static/dele/dele1.jpg')" mode="aspectFill" style=" border-radius: 20rpx; width: 190rpx; height: 150rpx;" alt="" />
<view class="" style=" flex: 1; margin-left: 20rpx; display: flex; flex-direction: column; justify-content: space-between; " >
<view class="" style=" " >
<view class="" style="font-weight: 700; font-size: 32rpx; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;" >
老北京炸酱面
</view>
</view>
<view class="" style="color: #666666; font-size: 26rpx; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; " >
老北京炸酱面是北京市传统小吃,属北京菜系,在京津冀地区广为流传。该菜品以面条为主料,搭配炸酱与时令菜码拌制而成,核心酱料选用肥瘦相间的五花肉丁,配以干黄酱和甜面酱混合炒制,经慢火熬煮形成深褐色酱料
</view>
<view class="" style=" " >
<text style="color: #666666; font-size: 26rpx;" >2026-10-15</text>
</view>
</view>
</view>
</view>
</view>
</view>
</template>
<script setup lang="ts">
import { ref } from 'vue';
import { onShow, onLoad } from '@dcloudio/uni-app';
import { Service } from "@/Service/Service"
// 导航栏
let topHeight = ref()
let height = ref()
let top = ref()
let current = ref(0)
let swiperList = ref(
[
'/static/dele/dele1.jpg',
'/static/dele/dele2.jpg'
]
)
let tabCurrent=ref(0)
let tabList = ref(
[
{
name: '美食',
img: '/static/index/index/food.png',
imged: '/static/index/index/fooded.png'
},
{
name: '饮品',
img: '/static/index/index/cofe.png',
imged: '/static/index/index/cofed.png'
},
{
name: '超市',
img: '/static/index/index/shop.png',
imged: '/static/index/index/shoped.png'
},
{
name: '美妆',
img: '/static/index/index/good.png',
imged: '/static/index/index/gooded.png'
},
{
name: '医疗',
img: '/static/index/index/medical.png',
imged: '/static/index/index/medicaled.png'
}
]
)
let notice=ref('uview-plus UI众多组件覆盖开发过程的各个需求组件功能丰富多端兼容。让您快速集成开箱即用')
onShow(() => {
})
onLoad(() => {
let res = wx.getMenuButtonBoundingClientRect()
topHeight.value = (res.top + res.height + 5) * 2
height.value = res.height * 2
top.value = res.top * 2
})
const chooseTab=(e)=>{
tabCurrent.value=e
}
</script>
<style lang="scss">
page {
background-color: #F5F5F5;
}
.indicator {
@include flex(row);
justify-content: center;
&__dot {
height: 6px;
width: 6px;
border-radius: 100px;
background-color: rgba(255, 255, 255, 0.35);
margin: 0 5px;
transition: background-color 0.3s;
&--active {
background-color: #ffffff;
}
}
}
.tabimgActive{
background-color: var(--nav-mian);
}
.tabimg{
background-color: #F5F5F5;
}
.tabActivefont{
color: var(--nav-mian);
}
.tabfont{
color:#333333
}
.tag{
display: flex;
align-items: center;
justify-content: center;
width: fit-content;
font-size: 24rpx;
margin-left: 10rpx;
}
</style>