Browse Source

首页改版

master
jiazhipeng 7 months ago
parent
commit
cb6ff5e2a8
  1. 14
      pages/index/index.js
  2. 76
      pages/index/index.wxml
  3. 69
      pages/index/index.wxss
  4. 4
      utils/https.js

14
pages/index/index.js

@ -592,9 +592,12 @@ Page({
getShowMore () { getShowMore () {
commonApi._post("multimedia/detail", {id: 2462}).then(res => { commonApi._post("multimedia/detail", {id: 2462}).then(res => {
this.setData({ if (res && res.data) {
showMore: res.data.company_name ==1?true:false this.setData({
}) showMore: res.data.company_name ==1?true:false
})
}
}) })
}, },
@ -926,7 +929,10 @@ Page({
tag_id: 85,offset: 0,limit: 5, tag_id: 85,offset: 0,limit: 5,
}).then(res=>{ }).then(res=>{
let resData = res.data.list || [] let resData = res.data.list || []
resData.forEach(v=>{ v.pagePoint = {classification: 'hot', key_number: v.id} }) resData.forEach(v=>{
v.pagePoint = {classification: 'hot', key_number: v.id};
v.display_tags_arr = v.display_tags?v.display_tags.split(",") : []
})
this.setData({ list: resData}) this.setData({ list: resData})
}) })
}, },

76
pages/index/index.wxml

@ -1,22 +1,7 @@
<!--index.wxml--> <!--index.wxml-->
<view class="bg" wx:if="{{!isTest}}" style="background-image: url({{indexSeason.background}});background: linear-gradient(165deg, #FF8623 213px, #FFE68A 213px); ">
<view class="bg" wx:if="{{!isTest}}" style="background-image: url({{indexSeason.background}});">
<!-- 顶部banner --> <!-- 顶部banner -->
<view style="position:relative;z-index: 1;"> <view style="position:relative;z-index: 1;padding-top: 200rpx;">
<swiper class="swiper" autoplay="{{false}}" interval="{{3000}}" duration="{{300}}"
bindchange="changeBannerIndex" data-keyname="activeBannerIndex" circular
indicator-dots indicator-active-color="#fff">
<block wx:for="{{banner}}" wx:key="index">
<swiper-item bindtap="bannerClick" data-item="{{item}}">
<image lazy-load src="{{item.head_img}}" mode="scaleToFill"></image>
</swiper-item>
</block>
</swiper>
<!-- <view class="com-flex dot-list">
<view class="dot{{index===activeBannerIndex?' active':''}}" wx:for="{{banner}}" wx:key="index"></view>
</view> -->
<view class="top-box" style="top: {{systemStyle.padHeight}}px;right:{{systemStyle.right+10}}px"> <view class="top-box" style="top: {{systemStyle.padHeight}}px;right:{{systemStyle.right+10}}px">
<view wx:if="{{weather}}" style="display: flex;flex-shrink: 0;"> <view wx:if="{{weather}}" style="display: flex;flex-shrink: 0;">
<image lazy-load src="{{weather.icon2}}" style="margin-left:0" mode="aspectFill"></image> <image lazy-load src="{{weather.icon2}}" style="margin-left:0" mode="aspectFill"></image>
@ -30,6 +15,19 @@
<view class="textOver" style="color:#000000">搜索您想要的</view> <view class="textOver" style="color:#000000">搜索您想要的</view>
</navigator> </navigator>
</view> </view>
<swiper class="swiper" autoplay="{{false}}" interval="{{3000}}" duration="{{300}}"
bindchange="changeBannerIndex" data-keyname="activeBannerIndex" circular>
<block wx:for="{{banner}}" wx:key="index">
<swiper-item bindtap="bannerClick" data-item="{{item}}">
<image lazy-load src="{{item.head_img}}" mode="scaleToFill"></image>
</swiper-item>
</block>
</swiper>
<!-- <view class="com-flex dot-list">
<view class="dot{{index===activeBannerIndex?' active':''}}" wx:for="{{banner}}" wx:key="index"></view>
</view> -->
<view class="banner-main"> <view class="banner-main">
<view catchtap="mainNavClick" class="banner-main-item" wx:for="{{bannerDataList}}" wx:key="index" data-item="{{item}}"> <view catchtap="mainNavClick" class="banner-main-item" wx:for="{{bannerDataList}}" wx:key="index" data-item="{{item}}">
@ -40,16 +38,8 @@
<view class="main-content" > <view class="main-content" >
<!-- 金刚区 --> <!-- 金刚区 -->
<view class="no-scrollbar" wx:if="{{mainTypeList.length>0}}"> <view style="padding: 0 20rpx;" wx:if="{{mainTypeList.length>0}}">
<!-- <scroll-view scroll-x style="height:152rpx" bindscroll="listenScroll" data-keyname="mainTypeLeft" class="no-scrollbar"> <!-- <swiper class="top-icons no-scrollbar" autoplay="{{false}}" style="height:180rpx;padding-top: 43rpx;"
<view class="top-icons no-scrollbar">
<view bindtap="mainNavClick" class="top-icon-item" wx:for="{{mainTypeList}}" wx:key="index" data-item="{{item}}">
<image lazy-load src="{{item.icon}}" mode="aspectFill"></image>
<view class="top-icon-text">{{item.menu_name}}</view>
</view>
</view>
</scroll-view> -->
<swiper class="top-icons no-scrollbar" autoplay="{{false}}" style="height:180rpx;padding-top: 43rpx;"
bindchange="changeBannerIndex" data-keyname="mainNavIndex" bindchange="changeBannerIndex" data-keyname="mainNavIndex"
display-multiple-items="5" circular display-multiple-items="5" circular
current="0"> current="0">
@ -59,14 +49,23 @@
<view class="top-icon-text">{{item.menu_name}}</view> <view class="top-icon-text">{{item.menu_name}}</view>
</swiper-item> </swiper-item>
</block> </block>
</swiper> </swiper> -->
<view class="scroll-line" > <view class="top-icons no-scrollbar">
<view bindtap="mainNavClick" class="top-icon-item" data-item="{{item}}" wx:for="{{mainTypeList}}" wx:key="index">
<image lazy-load src="{{item.icon}}" mode="aspectFill" class="{{(mainNavIndex+2)==index?'active':''}}"></image>
<view class="top-icon-text">{{item.menu_name}}</view>
</view>
</view>
<!-- <view class="scroll-line" >
<view class="scroll-line-bg" wx:if="{{(mainNavIndex+2) < (mainTypeList.length/2)}}" style="width:17rpx;"></view> <view class="scroll-line-bg" wx:if="{{(mainNavIndex+2) < (mainTypeList.length/2)}}" style="width:17rpx;"></view>
<view class="scroll-line-bg" wx:else style="width:17rpx;margin-left: 17rpx;"></view> <view class="scroll-line-bg" wx:else style="width:17rpx;margin-left: 17rpx;"></view>
</view> </view> -->
</view> </view>
<view class="content-box"> <view class="content-box">
<!-- 苏城环游记 todo--> <!-- 苏城环游记 todo-->
<view class="small-swiper-box" wx:if="{{ztbanner.length>0 && func_data.tour_guide}}"> <view class="small-swiper-box" wx:if="{{ztbanner.length>0 && func_data.tour_guide}}">
@ -89,12 +88,12 @@
<!-- 上方标题部分 --> <!-- 上方标题部分 -->
<view class="xsth-title"> <view class="xsth-title">
<view class="xsth-left" style="display: flex;"> <view class="xsth-left" style="display: flex;">
<image lazy-load style="width: 253.33rpx;" wx:if="{{xpthIndex==0}}" mode="aspectFill" class="common-header-img" src="{{indexSeason.hotBac}}"></image> <image lazy-load wx:if="{{xpthIndex==0}}" mode="widthFix" class="common-header-img" src="{{indexSeason.hotBac}}"></image>
<image lazy-load style="width: 253.33rpx;" wx:else="" bindtap="changeXpthIndex" data-value="{{0}}" mode="aspectFill" class="common-header-img" src="{{indexSeason.hotBacImg}}"></image> <image lazy-load wx:else="" bindtap="changeXpthIndex" data-value="{{0}}" mode="widthFix" class="common-header-img" src="{{indexSeason.hotBacImg}}"></image>
<view style="font-size: 0;" wx:if="{{indexSeason.xpthBac && indexSeason.xpthBacImg}}"> <view style="font-size: 0;padding-left: 34rpx;" wx:if="{{indexSeason.xpthBac && indexSeason.xpthBacImg}}">
<image lazy-load style="width: 253.33rpx;" wx:if="{{xpthIndex==0}}" bindtap="changeXpthIndex" data-value="{{1}}" mode="aspectFill" class="common-header-img" src="{{indexSeason.xpthBacImg}}"></image> <image lazy-load wx:if="{{xpthIndex==0}}" bindtap="changeXpthIndex" data-value="{{1}}" mode="widthFix" class="common-header-img" src="{{indexSeason.xpthBacImg}}"></image>
<image lazy-load style="width: 253.33rpx;" wx:else mode="aspectFill" class="common-header-img" src="{{indexSeason.xpthBac}}"></image> <image lazy-load wx:else mode="widthFix" class="common-header-img" src="{{indexSeason.xpthBac}}"></image>
</view> </view>
</view> </view>
@ -107,6 +106,9 @@
<image lazy-load src="{{item.headimg}}"></image> <image lazy-load src="{{item.headimg}}"></image>
<view class="season-content" style="padding:6rpx 12rpx;min-height: 130rpx;"> <view class="season-content" style="padding:6rpx 12rpx;min-height: 130rpx;">
<view class="textOver2">{{item.title}}</view> <view class="textOver2">{{item.title}}</view>
<view class="tags textOver" wx:if="{{item.display_tags}}">
<view class="tag" wx:for="{{item.display_tags_arr}}" wx:key="index" wx:for-item="tag">{{tag}}</view>
</view>
<view class="price"> <view class="price">
<text>¥</text><text>{{item.price/100}}</text><text>起</text> <text>¥</text><text>{{item.price/100}}</text><text>起</text>
</view> </view>
@ -169,14 +171,14 @@
<!-- 公共服务 --> <!-- 公共服务 -->
<view class="sale-road-boxes" style="margin-top:0;" wx:if="{{func_data.service_public}}"> <view class="sale-road-boxes" style="margin-top:0;" wx:if="{{func_data.service_public}}">
<image lazy-load class="common-header-img" mode="heightFix" src="{{indexSeason.ggfw}}"></image> <image lazy-load class="common-header-img" mode="widthFix" src="{{indexSeason.ggfw}}"></image>
<navigator url="/pages/pbService/index" catchtap="pagePoint" data-event="public_view" class="title-more" wx:if="{{showMore}}"> <navigator url="/pages/pbService/index" catchtap="pagePoint" data-event="public_view" class="title-more" wx:if="{{showMore}}">
<view style="height: 40rpx;line-height: 40rpx;">更多 ></view> <view style="height: 40rpx;line-height: 40rpx;">更多 ></view>
<!-- <image lazy-load style="width: 12rpx;height: 20rpx;margin-left: 8rpx;" src="https://static.ticket.sz-trip.com/uploads/20250526/e6b945c42851563e9672c6992057bd91.png" mode="" /> --> <!-- <image lazy-load style="width: 12rpx;height: 20rpx;margin-left: 8rpx;" src="https://static.ticket.sz-trip.com/uploads/20250526/e6b945c42851563e9672c6992057bd91.png" mode="" /> -->
</navigator> </navigator>
</view> </view>
<view wx:if="{{func_data.service_public}}"> <view wx:if="{{func_data.service_public}}">
<view class="ggfw-list" style="width:100%;margin-top: 30rpx;"> <view class="ggfw-list" style="width:100%;margin-top: -40rpx;position: relative;z-index: 1;">
<view class="ggfw" wx:for="{{publicSerivce}}" wx:key="index" data-item="{{item}}" bindtap="mainNavClick"> <view class="ggfw" wx:for="{{publicSerivce}}" wx:key="index" data-item="{{item}}" bindtap="mainNavClick">
<image lazy-load src="{{item.icon}}" mode="aspectFill"></image> <image lazy-load src="{{item.icon}}" mode="aspectFill"></image>
</view> </view>

69
pages/index/index.wxss

@ -2,18 +2,27 @@
/* 元旦修改 */ /* 元旦修改 */
.bg{ .bg{
height: 100vh; min-height: 100vh;
overflow-x: hidden; overflow-x: hidden;
overflow-y: auto; overflow-y: auto;
background-size: 100% 100%; background-size: 100% 100%;
background-repeat: no-repeat; background-repeat: no-repeat;
/* background-color:#E8F9FA; */ /* background-color:#E8F9FA; */
} }
.swiper,.swiper image { .swiper{
width: 100%; display: block;
display: block; width: 697rpx;
height: 908rpx; height: 340rpx;
margin: 0 auto;
} }
.swiper image {
display: block;
width: 100%;
height: 100%;
border-radius: 20rpx;
}
.top-box { .top-box {
display: flex; display: flex;
@ -45,7 +54,7 @@
font-size: 25rpx; font-size: 25rpx;
padding: 2rpx 5rpx; padding: 2rpx 5rpx;
box-sizing: border-box; box-sizing: border-box;
background: rgba(255, 255, 255, 0.6); background: #FFEEAD;
} }
.search-box .iconfont { .search-box .iconfont {
font-size: 30rpx; font-size: 30rpx;
@ -55,21 +64,17 @@
} }
.banner-main{ .banner-main{
position: absolute;
z-index: 3;
width: 100%; width: 100%;
left: 0;
bottom: 0rpx;
right: 0;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
padding: 0rpx 20rpx 30rpx; padding: 26rpx 20rpx 30rpx;
box-sizing: border-box; box-sizing: border-box;
/* background: linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.2)) */ /* background: linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.2)) */
} }
.banner-main image{ .banner-main image{
width: 173.33rpx; width: 156rpx;
height: 173.33rpx; height: 156rpx;
} }
.swiper .wx-swiper-dots.wx-swiper-dots-horizontal { .swiper .wx-swiper-dots.wx-swiper-dots-horizontal {
@ -88,19 +93,21 @@
/* padding-top: 63rpx; */ /* padding-top: 63rpx; */
} }
.top-icons { .top-icons {
display: flex; display: flex;
padding:0 20rpx; flex-wrap: wrap;
align-items: center; border-radius: 20rpx;
background: #FFEEAD;
} }
.top-icon-item { .top-icon-item {
margin-bottom: 20rpx; margin-bottom: 37rpx;
line-height: 37rpx; line-height: 37rpx;
font-size: 25rpx; font-size: 25rpx;
color: #000; color: #000;
text-align: center; text-align: center;
flex-shrink: 0; flex-shrink: 0;
width: 20%; width: 25%;
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
@ -131,7 +138,7 @@
margin: 0 25rpx; margin: 0 25rpx;
} }
.common-header-img{ .common-header-img{
height: 106.67rpx; width: 220.67rpx;
} }
.small-swiper { .small-swiper {
@ -185,6 +192,7 @@
flex-direction: column; flex-direction: column;
justify-content: space-between; justify-content: space-between;
} }
.season-hot{ .season-hot{
display: flex; display: flex;
} }
@ -218,6 +226,23 @@
height: 100%; height: 100%;
border-radius: 0; border-radius: 0;
} }
.season-hot .tags{
width: 100%;
display: flex;
flex-wrap: nowrap;
overflow-x: hidden;
}
.season-hot .tag{
height: 27rpx;
border: 1px solid #FF8623;
line-height: 27rpx;
padding: 0 10rpx;
font-weight: 500;
font-size: 20rpx;
color: #FF8623;
margin-right: 8rpx;
flex-shrink: 0;
}
.xsth-more { .xsth-more {
margin-top: 19.33rpx; margin-top: 19.33rpx;
@ -761,14 +786,14 @@
.ggfw-list { .ggfw-list {
display: grid; display: grid;
grid-template-columns: repeat(4, 166rpx); grid-template-columns: repeat(4, 157.33rpx);
row-gap: 23rpx; row-gap: 23rpx;
justify-content: space-between; justify-content: space-between;
} }
.ggfw-list .ggfw { .ggfw-list .ggfw {
width: 166rpx; width: 157.33rpx;
height: 133rpx; height: 130.67rpx;
/* margin-bottom: 23rpx; */ /* margin-bottom: 23rpx; */
} }
.ggfw image{ .ggfw image{

4
utils/https.js

@ -1,8 +1,8 @@
var app = getApp(); var app = getApp();
import util from "../utils/util" import util from "../utils/util"
// import userApi from "../utils/https/user.js"; // import userApi from "../utils/https/user.js";
// const baseUrl = "https://test.api.cloud.sz-trip.com/api/"; const baseUrl = "https://test.api.cloud.sz-trip.com/api/";
let baseUrl = "https://api.cloud.sz-trip.com/api/"; // let baseUrl = "https://api.cloud.sz-trip.com/api/";
const env = wx.getAccountInfoSync().miniProgram.envVersion const env = wx.getAccountInfoSync().miniProgram.envVersion
if (env == 'develop1') { if (env == 'develop1') {
baseUrl = "https://test.api.cloud.sz-trip.com/api/" baseUrl = "https://test.api.cloud.sz-trip.com/api/"

Loading…
Cancel
Save