16 changed files with 997 additions and 17 deletions
@ -0,0 +1,291 @@ |
|||||
|
// subPackages/feiyiNew/CGCIndex/index.js
|
||||
|
import commonApi from "../../../utils/https/common" |
||||
|
import util from "../../../utils/util" |
||||
|
Page({ |
||||
|
|
||||
|
/** |
||||
|
* 页面的初始数据 |
||||
|
*/ |
||||
|
data: { |
||||
|
banner: [], |
||||
|
xiaobanner: [], |
||||
|
menuList: [ |
||||
|
{path: '/subPackages/feiyiNew/index?idIndex=0'}, |
||||
|
{path: '/subPackages/feiyiNew/index?idIndex=1'}, |
||||
|
{path: '/subPackages/feiyiNew/index?idIndex=2'}, |
||||
|
{path: '/subPackages/feiyiNew/index?idIndex=3'}, |
||||
|
{path: '/subPackages/feiyiNew/index?idIndex=4'}, |
||||
|
{path: '/subPackages/feiyiNew/index?idIndex=5'} |
||||
|
], |
||||
|
handwrittenList: [], |
||||
|
SGVideo: {}, |
||||
|
|
||||
|
hotType: [ |
||||
|
{title: '好物推荐',id: '41'}, |
||||
|
{title: '猜你喜欢',id: '41'} |
||||
|
], |
||||
|
hotIndex: -1, |
||||
|
hotList: [], |
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面加载 |
||||
|
*/ |
||||
|
onLoad(options) { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面初次渲染完成 |
||||
|
*/ |
||||
|
onReady() { |
||||
|
this.getBanner() |
||||
|
this.getFeiYiSZ() |
||||
|
this.getFeiYiSG() |
||||
|
this.changeHotType({currentTarget:{dataset:{index:0}}}) |
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面显示 |
||||
|
*/ |
||||
|
onShow() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
getBanner: function() { |
||||
|
// 大banner
|
||||
|
commonApi._post("adv/getAdv", {position: 0,type_id: 3}).then(res => { |
||||
|
this.setData({banner: res.data || []}) |
||||
|
}) |
||||
|
// 分类旁的广告
|
||||
|
commonApi._post("adv/getAdv", { position: 1,type_id: 3}).then(res => { |
||||
|
this.setData({xiaobanner: res.data || [] }) |
||||
|
}) |
||||
|
}, |
||||
|
// 轮播图点击
|
||||
|
bannerClick: function (e) { |
||||
|
let item = e.currentTarget.dataset.item; |
||||
|
// this.pagePoint({event: "banner_click",type: 'banner'}, 1)
|
||||
|
switch (item.jump_type) { |
||||
|
case 0: |
||||
|
break; |
||||
|
case 1: |
||||
|
util.gotoDetail(item.product_model) |
||||
|
break; |
||||
|
case 2: |
||||
|
if (item.front_model && item.front_model.mini) { |
||||
|
wx.navigateTo({ |
||||
|
url: "/" + item.front_model.mini |
||||
|
}) |
||||
|
} |
||||
|
break; |
||||
|
case 3: |
||||
|
if ((item.tdata.url.indexOf('http://') != -1 || item.tdata.url.indexOf('https://') != -1) && |
||||
|
item.tdata.url.indexOf('m.cloud.sz-trip.com') == -1) { |
||||
|
// 外部h5
|
||||
|
console.log(111, item.tdata) |
||||
|
wx.navigateTo({ |
||||
|
url: "/pages/pbService/web/index?weburl=" + encodeURIComponent(item.tdata.url) |
||||
|
}) |
||||
|
} else { |
||||
|
let page = item.tdata.url.split("/"); |
||||
|
page = page[page.length - 1].split("?") |
||||
|
console.log(page[0]) |
||||
|
let url = this.data.urltopage[page[0]]; |
||||
|
if (url && url.indexOf('map') != -1) { |
||||
|
let types = ['', 'scenic', 'venue', 'post', 'restaurant', 'relic', 'tenscenic','cinema', 'academes'], |
||||
|
type = page[1] ? page[1].split("=") : []; |
||||
|
wx.reLaunch({ |
||||
|
url: url + "?type=" + (type[1] ? types.findIndex(t => t == type[1]) :null) |
||||
|
}) |
||||
|
} else if (url) { |
||||
|
wx.navigateTo({ |
||||
|
url: url, |
||||
|
}) |
||||
|
} else { |
||||
|
wx.navigateTo({ |
||||
|
url: "/pages/pbService/web/index?weburl=" + encodeURIComponent(item.tdata.url) |
||||
|
}) |
||||
|
} |
||||
|
} |
||||
|
break; |
||||
|
case 4: |
||||
|
if (item.tdata.appid == 'wxe5ca0f71e918e352' && wx.getStorageSync('jstrip_userid')) { |
||||
|
// 如果是苏心游的小程序 直接把authCode带过去
|
||||
|
userApi.user_post("user/getJumpThirdAppCode", {}).then(res => { |
||||
|
let weburl = item.tdata.page |
||||
|
if (weburl.indexOf('?') != -1) { |
||||
|
weburl += '&authCode=' + res.data; |
||||
|
} else { |
||||
|
weburl += '?authCode=' + res.data |
||||
|
} |
||||
|
wx.navigateToMiniProgram({ |
||||
|
appId: item.tdata.appid, |
||||
|
path: weburl |
||||
|
}) |
||||
|
}).catch(err => { |
||||
|
wx.navigateToMiniProgram({ |
||||
|
appId: item.tdata.appid, |
||||
|
path: item.tdata.page |
||||
|
}) |
||||
|
}) |
||||
|
} else { |
||||
|
wx.navigateToMiniProgram({ |
||||
|
appId: item.tdata.appid, |
||||
|
path: item.tdata.page |
||||
|
}) |
||||
|
} |
||||
|
break; |
||||
|
default: |
||||
|
break; |
||||
|
} |
||||
|
return; |
||||
|
}, |
||||
|
// 金刚区跳转
|
||||
|
goFeiYiList: function (e) { |
||||
|
let item = e.currentTarget.dataset.item; |
||||
|
wx.navigateTo({ |
||||
|
url: item.path, |
||||
|
}) |
||||
|
}, |
||||
|
|
||||
|
// 非遗手札
|
||||
|
getFeiYiSZ: function () { |
||||
|
commonApi._post("travels/getList", { |
||||
|
page_no: 0, |
||||
|
page_num: 4, |
||||
|
// type_key: 'feiyishouzha',
|
||||
|
type_key: 'someArt', |
||||
|
}).then(res => { |
||||
|
if (res) { |
||||
|
this.setData({handwrittenList: res.data.rows || [] }) |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
|
||||
|
// 非议时光
|
||||
|
getFeiYiSG : function () { |
||||
|
commonApi._post("multimedia/media_list", { |
||||
|
limit: 1, |
||||
|
page: 1, |
||||
|
class_id: 139, |
||||
|
// class_id: 140,
|
||||
|
type: 1, |
||||
|
}).then(res => { |
||||
|
if (res) { |
||||
|
this.setData({SGVideo: res.data.data[0] || [] }) |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
|
||||
|
// 视频播放
|
||||
|
goPlayVideo:function(e) { |
||||
|
let item = e.currentTarget.dataset.item; |
||||
|
wx.navigateTo({ |
||||
|
url: '/pages/pbService/appreciate/info/index?info='+encodeURIComponent(JSON.stringify(item)), |
||||
|
}) |
||||
|
}, |
||||
|
|
||||
|
|
||||
|
// 底部推荐
|
||||
|
changeHotType:function(e) { |
||||
|
let index = e.currentTarget.dataset.index; |
||||
|
if (index!=this.data.hotIndex) { |
||||
|
this.setData({hotIndex: index}) |
||||
|
let param = { |
||||
|
apiUrl: 'product/get_product_by_tag', |
||||
|
limit: 10,offset: 0,tag_id: 363, |
||||
|
// tag_id: 642
|
||||
|
} |
||||
|
if (index == 1) { |
||||
|
param = { |
||||
|
apiUrl: "multimedia/media_list", |
||||
|
limit: 100,page: 1,type: 1, |
||||
|
class_id: 139, |
||||
|
// class_id: 141,
|
||||
|
} |
||||
|
} |
||||
|
|
||||
|
commonApi._post(param.apiUrl, param).then(res => { |
||||
|
if (res) { |
||||
|
let resData = (res.data.list||res.data.data || []).map(v=>{ |
||||
|
return {...v, headimg: v.headimg?v.headimg:v.head_img} |
||||
|
}) |
||||
|
this.setData({hotList: resData }) |
||||
|
} |
||||
|
}) |
||||
|
|
||||
|
} |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
// 去详情
|
||||
|
goDetail:function(e) { |
||||
|
let item = e.currentTarget.dataset.item; |
||||
|
let type = e.currentTarget.dataset.type; |
||||
|
console.log(item) |
||||
|
if (type == 'travel') { |
||||
|
if(item.outside_url) { |
||||
|
wx.navigateTo({ |
||||
|
url: '/pages/pbService/web/index?weburl=' + encodeURIComponent(item.outside_url), |
||||
|
}) |
||||
|
} else { |
||||
|
wx.navigateTo({ |
||||
|
url: '/pages/info/strategyInfo/index?id=' + item.id, |
||||
|
}) |
||||
|
} |
||||
|
return |
||||
|
} |
||||
|
if (type == 'post') { |
||||
|
util.gotoDetail(item); |
||||
|
return |
||||
|
} |
||||
|
if (type == 'video') { |
||||
|
this.goPlayVideo(e) |
||||
|
} |
||||
|
}, |
||||
|
|
||||
|
goMoreList:function(e) { |
||||
|
let url = e.currentTarget.dataset.url; |
||||
|
if (url) { |
||||
|
wx.navigateTo({ |
||||
|
url: url, |
||||
|
}) |
||||
|
} |
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面隐藏 |
||||
|
*/ |
||||
|
onHide() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面卸载 |
||||
|
*/ |
||||
|
onUnload() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 页面相关事件处理函数--监听用户下拉动作 |
||||
|
*/ |
||||
|
onPullDownRefresh() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 页面上拉触底事件的处理函数 |
||||
|
*/ |
||||
|
onReachBottom() { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 用户点击右上角分享 |
||||
|
*/ |
||||
|
onShareAppMessage() { |
||||
|
|
||||
|
} |
||||
|
}) |
||||
@ -0,0 +1,5 @@ |
|||||
|
{ |
||||
|
"usingComponents": { |
||||
|
"title":"/pages/component/TitleHeader" |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,78 @@ |
|||||
|
<title title="大美非遗"></title> |
||||
|
<view class="content"> |
||||
|
<view class="top-box w-full"> |
||||
|
<swiper class="swiper" autoplay="{{true}}" interval="{{3000}}" duration="{{300}}" > |
||||
|
<block wx:for="{{banner}}" wx:key="index"> |
||||
|
<swiper-item bindtap="bannerClick" data-item="{{item}}"> |
||||
|
<image src="{{item.head_img}}" mode="scaleToFill"></image> |
||||
|
</swiper-item> |
||||
|
</block> |
||||
|
</swiper> |
||||
|
</view> |
||||
|
|
||||
|
<!-- 金刚区 --> |
||||
|
<view class="menu-box flex-between"> |
||||
|
<view class="menu-left"> |
||||
|
<view class="menu-item" wx:for="{{menuList}}" data-item="{{item}}" bindtap="goFeiYiList" wx:key="index"> |
||||
|
<image src="https://static.ticket.sz-trip.com/cgc/images/index/{{index + 1}}.png" style="height: 108rpx;" mode="heightFix"></image> |
||||
|
<image src="https://static.ticket.sz-trip.com/cgc/images/index/{{index + 1}}s.png" style="height: 22rpx;margin-top: 8rpx;" mode="heightFix"></image> |
||||
|
</view> |
||||
|
|
||||
|
</view> |
||||
|
<view class="menu-right"> |
||||
|
<swiper class="swiper" autoplay="{{true}}" interval="{{3000}}" duration="{{300}}" > |
||||
|
<block wx:for="{{banner}}" wx:key="index"> |
||||
|
<swiper-item bindtap="bannerClick" data-item="{{item}}"> |
||||
|
<image src="{{item.head_img}}" mode="scaleToFill"></image> |
||||
|
</swiper-item> |
||||
|
</block> |
||||
|
</swiper> |
||||
|
</view> |
||||
|
</view> |
||||
|
|
||||
|
<!-- 非遗手札 --> |
||||
|
<view class="title-image-box flex-between"> |
||||
|
<image src="https://static.ticket.sz-trip.com/cgc/images/index/title1.png" mode="" style="width: 350rpx;height: 32rpx;"></image> |
||||
|
<image src="https://static.ticket.sz-trip.com/cgc/images/index/more.png" |
||||
|
mode="" style="width: 59rpx;height: 20rpx;" |
||||
|
bind:tap="goMoreList" data-url="{{'/subPackages/feiyiNew/CGCLetter/index'}}"></image> |
||||
|
</view> |
||||
|
<view class="handwritten-box flex-between"> |
||||
|
<image src="{{item.headimg}}" mode="aspectFill" data-item="{{item}}" |
||||
|
wx:for="{{handwrittenList}}" wx:key="index" |
||||
|
bindtap="goDetail" data-type="travel"></image> |
||||
|
</view> |
||||
|
|
||||
|
<!-- 非遗shi光 --> |
||||
|
<view class="title-image-box flex-between"> |
||||
|
<image src="https://static.ticket.sz-trip.com/cgc/images/index/title2.png" mode="" style="width: 350rpx;height: 32rpx;"></image> |
||||
|
<image src="https://static.ticket.sz-trip.com/cgc/images/index/more.png" |
||||
|
mode="" style="width: 59rpx;height: 20rpx;" |
||||
|
bind:tap="goMoreList" data-url="{{'/subPackages/feiyiNew/CGCTime/index'}}"></image> |
||||
|
</view> |
||||
|
<view class="time-box" style="background-image: url({{SGVideo.head_img}});" |
||||
|
bindtap="goPlayVideo" data-item="{{SGVideo}}"> |
||||
|
<image src="https://static.ticket.sz-trip.com/cgc/images/index/play.png" class="play"></image> |
||||
|
</view> |
||||
|
|
||||
|
<!-- 底部推荐 --> |
||||
|
<view class="hot-type"> |
||||
|
<view data-index="{{index}}" wx:for="{{hotType}}" wx:key="index" |
||||
|
class="hot-type-item {{index == hotIndex?'active':''}}" |
||||
|
bindtap="changeHotType"> |
||||
|
{{item.title}} |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="hot-box"> |
||||
|
<view class="hot-list-item" wx:for="{{2}}" wx:for-index="number" wx:key="number"> |
||||
|
<view wx:if="{{index%2==number}}" data-item="{{item}}" wx:for="{{hotList}}" wx:key="id" |
||||
|
class="hot-data" bindtap="goDetail" data-type="{{hotIndex==0?'post':'video'}}"> |
||||
|
<image class="hot-data-image" src="{{item.headimg}}" mode="widthFix"></image> |
||||
|
<view class="hot-data-title textOver">{{item.title}}</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
|
||||
|
</view> |
||||
|
|
||||
|
|
||||
|
</view> |
||||
@ -0,0 +1,154 @@ |
|||||
|
/* subPackages/feiyiNew/CGCIndex/index.wxss */ |
||||
|
page{ |
||||
|
min-height: 100%; |
||||
|
background: #F9F0EA; |
||||
|
} |
||||
|
.content{ |
||||
|
padding: 21rpx 30rpx 40rpx; |
||||
|
} |
||||
|
.w-full{ |
||||
|
width: 100%; |
||||
|
} |
||||
|
|
||||
|
.top-box .swiper,.top-box .swiper image { |
||||
|
width: 100%; |
||||
|
display: block; |
||||
|
height: 451rpx; |
||||
|
border-radius: 30rpx; |
||||
|
} |
||||
|
|
||||
|
.menu-box{ |
||||
|
width: 100%; |
||||
|
padding-top: 60rpx; |
||||
|
display: flex; |
||||
|
} |
||||
|
.menu-box .menu-left{ |
||||
|
display: flex; |
||||
|
flex: 1; |
||||
|
flex-wrap: wrap; |
||||
|
width: 1rpx; |
||||
|
justify-content: space-between; |
||||
|
} |
||||
|
.menu-box .menu-left .menu-item{ |
||||
|
width: 33%; |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
align-items: center; |
||||
|
margin-bottom: 37rpx; |
||||
|
} |
||||
|
|
||||
|
.menu-box .menu-right{ |
||||
|
width: 254rpx; |
||||
|
height: 323rpx; |
||||
|
flex-shrink: 0; |
||||
|
} |
||||
|
|
||||
|
.menu-right .swiper,.menu-right .swiper image { |
||||
|
width: 100%; |
||||
|
height: 100%; |
||||
|
display: block; |
||||
|
border-radius: 20rpx; |
||||
|
} |
||||
|
|
||||
|
.title-image-box{ |
||||
|
width: 100%; |
||||
|
display: flex; |
||||
|
justify-content: space-between; |
||||
|
align-items: flex-end; |
||||
|
margin-top: 60rpx; |
||||
|
} |
||||
|
|
||||
|
.handwritten-box{ |
||||
|
width: 100%; |
||||
|
display: flex; |
||||
|
flex-wrap: wrap; |
||||
|
justify-content: space-between; |
||||
|
padding-top: 20rpx; |
||||
|
} |
||||
|
.handwritten-box image{ |
||||
|
width: 49%; |
||||
|
height: 181rpx; |
||||
|
margin-bottom: 13rpx; |
||||
|
border-radius: 10rpx; |
||||
|
} |
||||
|
|
||||
|
.time-box { |
||||
|
background-size: 100% 100%; |
||||
|
background-repeat: no-repeat; |
||||
|
width: 100%; |
||||
|
height: 370rpx; |
||||
|
border-radius: 30rpx; |
||||
|
position: relative; |
||||
|
margin-top: 20rpx; |
||||
|
} |
||||
|
.time-box .play { |
||||
|
position: absolute; |
||||
|
top: 0; |
||||
|
bottom: 0; |
||||
|
left: 0; |
||||
|
right: 0; |
||||
|
margin: auto; |
||||
|
width: 90rpx; |
||||
|
height: 90rpx; |
||||
|
} |
||||
|
|
||||
|
.hot-type{ |
||||
|
height: 50rpx; |
||||
|
font-weight: bold; |
||||
|
font-size: 32rpx; |
||||
|
color: #B5B5B6; |
||||
|
display: flex; |
||||
|
justify-content: space-around; |
||||
|
margin-top: 40rpx; |
||||
|
} |
||||
|
.hot-type-item{ |
||||
|
position: relative; |
||||
|
} |
||||
|
.hot-type-item::after{ |
||||
|
content: ""; |
||||
|
position: absolute; |
||||
|
left: 0; |
||||
|
right: 0; |
||||
|
bottom: -10rpx; |
||||
|
background-color: #B5B5B6; |
||||
|
margin: 0 auto; |
||||
|
width: 32rpx; |
||||
|
height: 4rpx; |
||||
|
} |
||||
|
.hot-type-item.active{ |
||||
|
color: #000000; |
||||
|
} |
||||
|
.hot-type-item.active::after{ |
||||
|
background-color: #000000; |
||||
|
} |
||||
|
|
||||
|
.hot-box{ |
||||
|
margin-top: 36rpx; |
||||
|
width: 100%; |
||||
|
display: flex; |
||||
|
justify-content: space-between; |
||||
|
} |
||||
|
|
||||
|
.hot-list-item{ |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
width: 49%; |
||||
|
flex-shrink: 0; |
||||
|
} |
||||
|
.hot-data{ |
||||
|
width: 100%; |
||||
|
background: #FFFFFF; |
||||
|
border-radius: 20rpx; |
||||
|
font-weight: bold; |
||||
|
font-size: 0; |
||||
|
color: #000000; |
||||
|
margin-bottom: 29rpx; |
||||
|
} |
||||
|
.hot-data-image{ |
||||
|
width: 100%; |
||||
|
border-radius: 20rpx 20rpx 0rpx 0rpx; |
||||
|
} |
||||
|
.hot-data-title{ |
||||
|
padding: 20rpx; |
||||
|
font-size: 26rpx; |
||||
|
} |
||||
@ -0,0 +1,114 @@ |
|||||
|
// pages/list/theatre/index.js
|
||||
|
import commonApi from "../../../utils/https/common" |
||||
|
import util from "../../../utils/util" |
||||
|
let app = getApp() |
||||
|
Page({ |
||||
|
|
||||
|
/** |
||||
|
* 页面的初始数据 |
||||
|
*/ |
||||
|
data: { |
||||
|
list:[], |
||||
|
page_no: 0, |
||||
|
haveMore: true, |
||||
|
}, |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面加载 |
||||
|
*/ |
||||
|
onLoad: function (options) { |
||||
|
wx.showShareMenu({ |
||||
|
withShareTicket: true, |
||||
|
menus: ['shareAppMessage', 'shareTimeline'] |
||||
|
}) |
||||
|
}, |
||||
|
|
||||
|
gotoDetail:function(e){ |
||||
|
let item = e.currentTarget.dataset.item; |
||||
|
if(item.outside_url) { |
||||
|
wx.navigateTo({ |
||||
|
url: '/pages/pbService/web/index?weburl=' + encodeURIComponent(item.outside_url), |
||||
|
}) |
||||
|
} else { |
||||
|
wx.navigateTo({ |
||||
|
url: '/pages/info/strategyInfo/index?id=' + item.id, |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
}, |
||||
|
getList:function(){ |
||||
|
if (!this.data.haveMore) return |
||||
|
let list = this.data.list |
||||
|
|
||||
|
commonApi._post("travels/getList", { |
||||
|
page_no: this.data.page_no, |
||||
|
page_num: 10, |
||||
|
// type_key: 'feiyishouzha',
|
||||
|
type_key: 'someArt', |
||||
|
}).then(res => { |
||||
|
if (res) { |
||||
|
this.setData({list:list.concat(res.data.rows||[])}) |
||||
|
if (res.data.rows.length<10) { |
||||
|
this.data.haveMore = false |
||||
|
} |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面初次渲染完成 |
||||
|
*/ |
||||
|
onReady: function () { |
||||
|
this.getList() |
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面显示 |
||||
|
*/ |
||||
|
onShow: function () { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面隐藏 |
||||
|
*/ |
||||
|
onHide: function () { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面卸载 |
||||
|
*/ |
||||
|
onUnload: function () { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 页面相关事件处理函数--监听用户下拉动作 |
||||
|
*/ |
||||
|
onPullDownRefresh: function () { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 页面上拉触底事件的处理函数 |
||||
|
*/ |
||||
|
onReachBottom: function () { |
||||
|
this.getList() |
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 用户点击右上角分享 |
||||
|
*/ |
||||
|
onShareAppMessage: function () { |
||||
|
|
||||
|
}, |
||||
|
onShareTimeline: function() { |
||||
|
return { |
||||
|
title: '君到苏州-剧场演出', |
||||
|
query: '', |
||||
|
imageUrl: 'https://static.ticket.sz-trip.com/xcxImages/index/icon4New.png' |
||||
|
} |
||||
|
} |
||||
|
}) |
||||
@ -0,0 +1,5 @@ |
|||||
|
{ |
||||
|
"usingComponents": { |
||||
|
"title":"/pages/component/TitleHeader" |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,34 @@ |
|||||
|
<!--pages/list/theatre/index.wxml--> |
||||
|
<!-- <wxs src="../../../../utils/filter.wxs" module="tool" /> --> |
||||
|
<title title="非遗手札"></title> |
||||
|
<view class="my-header-search"> |
||||
|
<image class="heaimg" src="https://static.ticket.sz-trip.com/uploads/20241118/5540525af7880d15a3899f56f9000237.png" mode="widthFix"></image> |
||||
|
</view> |
||||
|
|
||||
|
<view class="content"> |
||||
|
<view bindtap="gotoDetail" data-item="{{item}}" class="item" wx:for="{{list}}"> |
||||
|
<image src="{{item.headimg}}" mode="aspectFill"></image> |
||||
|
<view class="info"> |
||||
|
<view class="textOver2 title">{{item.title}}</view> |
||||
|
<view class="textOver subtitle">{{item.subtitle}}</view> |
||||
|
<view class="letter-user"> |
||||
|
<view style="display: flex;align-items: center;"> |
||||
|
<image style="width: 48rpx;height: 48rpx;margin-right: 8rpx;" src="{{item.avatar}}" mode="aspectFill"></image> |
||||
|
<text>{{item.nickname}}</text> |
||||
|
</view> |
||||
|
<view style="display: flex;align-items: center;color: #848484;"> |
||||
|
<text class="iconfont icon-aixin"></text> |
||||
|
<text class="icon-num" style="padding: 0 36rpx 0 8rpx;">{{item.like_number}}</text> |
||||
|
<text class="iconfont icon-eye"></text> |
||||
|
<text class="icon-num" style="padding-left: 8rpx;">{{item.view_number}}</text> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view wx:if="{{list.length==0}}" class="common-empty" style="z-index:-1"> |
||||
|
<image mode="widthFix" src="https://static.ticket.sz-trip.com/xcxImages/other/nodata.png"></image> |
||||
|
<view>暂无内容</view> |
||||
|
</view> |
||||
|
|
||||
|
</view> |
||||
|
|
||||
@ -0,0 +1,67 @@ |
|||||
|
/* pages/list/theatre/index.wxss */ |
||||
|
page{ |
||||
|
background: white; |
||||
|
padding-bottom: 20rpx; |
||||
|
} |
||||
|
|
||||
|
.my-header-search{ |
||||
|
width: 100%; |
||||
|
} |
||||
|
.my-header-search .heaimg{ |
||||
|
width: 100%; |
||||
|
display: block; |
||||
|
} |
||||
|
|
||||
|
.content{ |
||||
|
margin-top: -15rpx; |
||||
|
background: #FFFFFF; |
||||
|
border-radius: 24rpx 24rpx 24rpx 24rpx; |
||||
|
padding: 32rpx; |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
.item { |
||||
|
width: 100%; |
||||
|
display: flex; |
||||
|
align-items: center; |
||||
|
justify-content: space-between; |
||||
|
margin-bottom: 36rpx; |
||||
|
} |
||||
|
.item image { |
||||
|
width: 208rpx; |
||||
|
height: 198rpx; |
||||
|
border-radius: 24rpx 24rpx 24rpx 24rpx; |
||||
|
margin-right: 24rpx; |
||||
|
flex-shrink: 0; |
||||
|
} |
||||
|
|
||||
|
|
||||
|
.info { |
||||
|
flex: 1; |
||||
|
width: 1rpx; |
||||
|
height: 198rpx; |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
justify-content: space-between; |
||||
|
} |
||||
|
.info .title { |
||||
|
font-weight: 500; |
||||
|
font-size: 31rpx; |
||||
|
color: #000; |
||||
|
margin-bottom: 9rpx; |
||||
|
} |
||||
|
.info .subtitle { |
||||
|
font-size: 24rpx; |
||||
|
color: #999999; |
||||
|
margin-bottom: 9rpx; |
||||
|
} |
||||
|
.letter-user{ |
||||
|
display: flex; |
||||
|
justify-content: space-between; |
||||
|
font-weight: 400; |
||||
|
font-size: 24rpx; |
||||
|
color: #000000; |
||||
|
align-items: center; |
||||
|
} |
||||
@ -0,0 +1,114 @@ |
|||||
|
// pages/list/theatre/index.js
|
||||
|
import commonApi from "../../../utils/https/common" |
||||
|
import util from "../../../utils/util" |
||||
|
let app = getApp() |
||||
|
Page({ |
||||
|
|
||||
|
/** |
||||
|
* 页面的初始数据 |
||||
|
*/ |
||||
|
data: { |
||||
|
list:[], |
||||
|
page_no: 0, |
||||
|
haveMore: true, |
||||
|
}, |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面加载 |
||||
|
*/ |
||||
|
onLoad: function (options) { |
||||
|
wx.showShareMenu({ |
||||
|
withShareTicket: true, |
||||
|
menus: ['shareAppMessage', 'shareTimeline'] |
||||
|
}) |
||||
|
}, |
||||
|
|
||||
|
gotoDetail:function(e){ |
||||
|
let item = e.currentTarget.dataset.item; |
||||
|
if(item.outside_url) { |
||||
|
wx.navigateTo({ |
||||
|
url: '/pages/pbService/web/index?weburl=' + encodeURIComponent(item.outside_url), |
||||
|
}) |
||||
|
} else { |
||||
|
wx.navigateTo({ |
||||
|
url: '/pages/info/strategyInfo/index?id=' + item.id, |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
}, |
||||
|
getList:function(){ |
||||
|
if (!this.data.haveMore) return |
||||
|
let list = this.data.list |
||||
|
|
||||
|
commonApi._post("travels/getList", { |
||||
|
page_no: this.data.page_no, |
||||
|
page_num: 10, |
||||
|
// type_key: 'feiyishouzha',
|
||||
|
type_key: 'someArt', |
||||
|
}).then(res => { |
||||
|
if (res) { |
||||
|
this.setData({list:list.concat(res.data.rows||[])}) |
||||
|
if (res.data.rows.length<10) { |
||||
|
this.data.haveMore = false |
||||
|
} |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面初次渲染完成 |
||||
|
*/ |
||||
|
onReady: function () { |
||||
|
this.getList() |
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面显示 |
||||
|
*/ |
||||
|
onShow: function () { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面隐藏 |
||||
|
*/ |
||||
|
onHide: function () { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面卸载 |
||||
|
*/ |
||||
|
onUnload: function () { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 页面相关事件处理函数--监听用户下拉动作 |
||||
|
*/ |
||||
|
onPullDownRefresh: function () { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 页面上拉触底事件的处理函数 |
||||
|
*/ |
||||
|
onReachBottom: function () { |
||||
|
this.getList() |
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 用户点击右上角分享 |
||||
|
*/ |
||||
|
onShareAppMessage: function () { |
||||
|
|
||||
|
}, |
||||
|
onShareTimeline: function() { |
||||
|
return { |
||||
|
title: '君到苏州-剧场演出', |
||||
|
query: '', |
||||
|
imageUrl: 'https://static.ticket.sz-trip.com/xcxImages/index/icon4New.png' |
||||
|
} |
||||
|
} |
||||
|
}) |
||||
@ -0,0 +1,5 @@ |
|||||
|
{ |
||||
|
"usingComponents": { |
||||
|
"title":"/pages/component/TitleHeader" |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,34 @@ |
|||||
|
<!--pages/list/theatre/index.wxml--> |
||||
|
<!-- <wxs src="../../../../utils/filter.wxs" module="tool" /> --> |
||||
|
<title title="非遗手札"></title> |
||||
|
<view class="my-header-search"> |
||||
|
<image class="heaimg" src="https://static.ticket.sz-trip.com/uploads/20241118/5540525af7880d15a3899f56f9000237.png" mode="widthFix"></image> |
||||
|
</view> |
||||
|
|
||||
|
<view class="content"> |
||||
|
<view bindtap="gotoDetail" data-item="{{item}}" class="item" wx:for="{{list}}"> |
||||
|
<image src="{{item.headimg}}" mode="aspectFill"></image> |
||||
|
<view class="info"> |
||||
|
<view class="textOver2 title">{{item.title}}</view> |
||||
|
<view class="textOver subtitle">{{item.subtitle}}</view> |
||||
|
<view class="letter-user"> |
||||
|
<view style="display: flex;align-items: center;"> |
||||
|
<image style="width: 48rpx;height: 48rpx;margin-right: 8rpx;" src="{{item.avatar}}" mode="aspectFill"></image> |
||||
|
<text>{{item.nickname}}</text> |
||||
|
</view> |
||||
|
<view style="display: flex;align-items: center;color: #848484;"> |
||||
|
<text class="iconfont icon-aixin"></text> |
||||
|
<text class="icon-num" style="padding: 0 36rpx 0 8rpx;">{{item.like_number}}</text> |
||||
|
<text class="iconfont icon-eye"></text> |
||||
|
<text class="icon-num" style="padding-left: 8rpx;">{{item.view_number}}</text> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view wx:if="{{list.length==0}}" class="common-empty" style="z-index:-1"> |
||||
|
<image mode="widthFix" src="https://static.ticket.sz-trip.com/xcxImages/other/nodata.png"></image> |
||||
|
<view>暂无内容</view> |
||||
|
</view> |
||||
|
|
||||
|
</view> |
||||
|
|
||||
@ -0,0 +1,67 @@ |
|||||
|
/* pages/list/theatre/index.wxss */ |
||||
|
page{ |
||||
|
background: white; |
||||
|
padding-bottom: 20rpx; |
||||
|
} |
||||
|
|
||||
|
.my-header-search{ |
||||
|
width: 100%; |
||||
|
} |
||||
|
.my-header-search .heaimg{ |
||||
|
width: 100%; |
||||
|
display: block; |
||||
|
} |
||||
|
|
||||
|
.content{ |
||||
|
margin-top: -15rpx; |
||||
|
background: #FFFFFF; |
||||
|
border-radius: 24rpx 24rpx 24rpx 24rpx; |
||||
|
padding: 32rpx; |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
.item { |
||||
|
width: 100%; |
||||
|
display: flex; |
||||
|
align-items: center; |
||||
|
justify-content: space-between; |
||||
|
margin-bottom: 36rpx; |
||||
|
} |
||||
|
.item image { |
||||
|
width: 208rpx; |
||||
|
height: 198rpx; |
||||
|
border-radius: 24rpx 24rpx 24rpx 24rpx; |
||||
|
margin-right: 24rpx; |
||||
|
flex-shrink: 0; |
||||
|
} |
||||
|
|
||||
|
|
||||
|
.info { |
||||
|
flex: 1; |
||||
|
width: 1rpx; |
||||
|
height: 198rpx; |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
justify-content: space-between; |
||||
|
} |
||||
|
.info .title { |
||||
|
font-weight: 500; |
||||
|
font-size: 31rpx; |
||||
|
color: #000; |
||||
|
margin-bottom: 9rpx; |
||||
|
} |
||||
|
.info .subtitle { |
||||
|
font-size: 24rpx; |
||||
|
color: #999999; |
||||
|
margin-bottom: 9rpx; |
||||
|
} |
||||
|
.letter-user{ |
||||
|
display: flex; |
||||
|
justify-content: space-between; |
||||
|
font-weight: 400; |
||||
|
font-size: 24rpx; |
||||
|
color: #000000; |
||||
|
align-items: center; |
||||
|
} |
||||
Loading…
Reference in new issue