常熟
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

126 lines
2.5 KiB

7 months ago
<template>
<view class="bg">
<view v-for="(item,index) in list" :key="index" class="item" @click="gotoDetail(item)">
<image :src="showImg(item.arr.image)" mode="aspectFill"></image>
<view class="content flex-column">
<view class="title text-overflowRows">{{item.arr.title}}</view>
<view class="price" v-if="item.arr.low_money || item.arr.price">{{(item.arr.low_money || item.arr.price) / 100}}</view>
</view>
</view>
</view>
</template>
<script>
export default {
data() {
return {
list: []
}
},
onShow() {
this.getList()
},
methods: {
getList() {
this.Post({
offset: 0,
limit: 100
},'/api/scenic/getCollectList').then(res => {
this.list = res.data
})
},
// 通过type跳转详情
gotoDetail(item) {
let res = this.goOtherDetail(item.arr)
if (res) {
return
}
// 1文章 2景点 3商品美食 4酒店 5商品文创 6商品线路 7活动
let url = ''
switch (item.type){
case 1:
url= '/subPackages/travelGuide/detail?id=' + item.arr.id
break;
case 2:
url= '/subPackages/ticketBooking/detail?id=' + item.arr.id
break;
case 3:
url= '/subPackages/food/foodDetail?id=' + item.arr.id
break;
case 4:
url= '/subPackages/hotelHomestay/detail?id=' + item.arr.id
break;
case 5:
url= '/subPackages/techan/detail?id=' + item.arr.id
break;
case 6:
url= ''
break;
case 7:
url= '/subPackages/eventCalendar/detail?id=' + item.arr.id
break;
default:
break;
}
this.gotoPath(url)
}
}
}
</script>
<style lang="scss" scoped>
.bg {
min-height: 100vh;
padding: 20rpx auto 100rpx;
background: #F7F7F7;
}
.item {
width: 697rpx;
height: 213rpx;
padding: 6rpx 20rpx 6rpx 6rpx;
border-radius: 20rpx;
display: flex;
margin: 0 auto 20rpx;
background: #FFFFFF;
image {
width: 200rpx;
height: 200rpx;
background: #DFEDE0;
border-radius: 13rpx;
}
.content {
flex: 1;
margin-left: 15rpx;
padding: 10rpx 0;
height: 200rpx;
justify-content: space-between;
.title {
font-weight: bold;
font-size: 31rpx;
color: #333333;
}
.price {
font-weight: bold;
font-size: 40rpx;
color: #FF3D3D;
text-align: right;
}
.price::before {
content: '¥';
font-size: 31rpx;
color: #FF3D3D;
}
.price::after {
content: '起';
font-weight: 500;
font-size: 27rpx;
color: #999999;
}
}
}
</style>