351 lines
8.2 KiB
JavaScript
351 lines
8.2 KiB
JavaScript
// packageI/cps/cpsExtension.js
|
|
const app = getApp();
|
|
Page({
|
|
|
|
/**
|
|
* 页面的初始数据
|
|
*/
|
|
data: {
|
|
tab: '',
|
|
testcolor: '#ffb32f',
|
|
active: 0,
|
|
isFixed: false,
|
|
child:false
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面加载
|
|
*/
|
|
onLoad: function (options) {
|
|
if (options.tab) {
|
|
this.setData({
|
|
tab: options.tab,
|
|
});
|
|
}
|
|
if (options.mid) {
|
|
app._setMid(options.mid);
|
|
}
|
|
if (options.scene) {
|
|
let scene = decodeURIComponent(options.scene);
|
|
console.log(scene);
|
|
if (scene) {
|
|
var info_arr = [];
|
|
info_arr = scene.split('&');
|
|
for (let i = 0; i < info_arr.length; i++) {
|
|
let chil_arr = [];
|
|
chil_arr = info_arr[i].split('=');
|
|
console.log('59', chil_arr);
|
|
if (chil_arr[0] == 'mid') {
|
|
app._setMid(chil_arr[1]);
|
|
} else if (chil_arr[0] == 'tab') {
|
|
this.setData({
|
|
tab: chil_arr[1],
|
|
});
|
|
} else if (chil_arr[0] == 'child') {
|
|
this.setData({
|
|
child: true,
|
|
});
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if(options.child == 'child'){
|
|
console.log('111111111');
|
|
// 子平台插件
|
|
this.setData({
|
|
child:true
|
|
});
|
|
}
|
|
this.getData();
|
|
let oris = wx.getSystemInfoSync().platform;
|
|
let that = this;
|
|
setTimeout(() => {
|
|
let height = wx.getMenuButtonBoundingClientRect().height;
|
|
console.log(wx.getMenuButtonBoundingClientRect(), );
|
|
that.setData({
|
|
viewHeight: oris == 'ios' ? height + 20 : height
|
|
});
|
|
}, 400);
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面初次渲染完成
|
|
*/
|
|
onReady: function () {
|
|
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面显示
|
|
*/
|
|
onShow: function () {
|
|
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面隐藏
|
|
*/
|
|
onHide: function () {
|
|
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面卸载
|
|
*/
|
|
onUnload: function () {
|
|
|
|
},
|
|
|
|
/**
|
|
* 页面相关事件处理函数--监听用户下拉动作
|
|
*/
|
|
onPullDownRefresh: function () {
|
|
|
|
},
|
|
|
|
/**
|
|
* 页面上拉触底事件的处理函数
|
|
*/
|
|
onReachBottom: function () {
|
|
|
|
},
|
|
|
|
/**
|
|
* 用户点击右上角分享
|
|
*/
|
|
onShareAppMessage: function () {
|
|
var value = wx.getStorageSync("yz_uid");
|
|
var mid = "";
|
|
if (value) {
|
|
mid = value;
|
|
}
|
|
console.log(`/packageI/cps/cpsExtension?tab=${this.data.active}&mid=${mid}`);
|
|
let url;
|
|
if(this.data.child){
|
|
url=`/packageI/cps/cpsExtension?tab=${this.data.info[this.data.active].activity_id}&mid=${mid}&child=child`;
|
|
}else{
|
|
url=`/packageI/cps/cpsExtension?tab=${this.data.info[this.data.active].activity_id}&mid=${mid}`;
|
|
}
|
|
return {
|
|
path: url
|
|
};
|
|
},
|
|
ascrollChange(e) {
|
|
|
|
},
|
|
toLink(e) {
|
|
console.log(e);
|
|
let id = e.currentTarget.dataset.web_url.mini_app_id;
|
|
let paths = e.currentTarget.dataset.web_url.mini_path;
|
|
wx.navigateToMiniProgram({
|
|
appId: id,
|
|
path: paths,
|
|
envVersion: 'release',
|
|
success(res) {
|
|
// 打开成功
|
|
}
|
|
});
|
|
},
|
|
runGoPageYx(e) {
|
|
let id = e.currentTarget.dataset.id;
|
|
let info = this.data.info;
|
|
for (let i = 0; i < info.length; i++) {
|
|
if (info[i].another_id == id) {
|
|
// this.$refs.tabsNav.scrollTo(i);
|
|
this.setData({
|
|
active: i
|
|
});
|
|
}
|
|
}
|
|
},
|
|
goPageYx(ind) {
|
|
let info = this.data.info;
|
|
for (let i = 0; i < info.length; i++) {
|
|
if (info[i].another_id == ind) {
|
|
// this.$refs.tabsNav.scrollTo(i);
|
|
this.setData({
|
|
active: i
|
|
});
|
|
}
|
|
}
|
|
},
|
|
actChange(e) {
|
|
console.log(e);
|
|
let key = e.detail.index;
|
|
this.setData({
|
|
active: key
|
|
});
|
|
console.log(this.data.info[key].activity_id);
|
|
this.getPage(this.data.info[key].activity_id);
|
|
},
|
|
closePopup() {
|
|
this.setData({
|
|
show: false
|
|
});
|
|
},
|
|
imgPreview(e) {
|
|
console.log(e);
|
|
let link = e.currentTarget.dataset.img;
|
|
wx.previewImage({
|
|
current: link,
|
|
urls: [link]
|
|
});
|
|
},
|
|
getData() {
|
|
let that = this;
|
|
let url = "";
|
|
if(this.data.child){
|
|
url = "plugin.cps-sub-platform.frontend.plat-activity.getPlatList";
|
|
}else{
|
|
url = "plugin.aggregation-cps.api.plat-activity.getPlatList";
|
|
}
|
|
let urlStr = app.getNetAddresss(url);
|
|
app._postNetWork({
|
|
url: urlStr,
|
|
success: (resdata) => {
|
|
var res = resdata.data;
|
|
if (res.result == 1) {
|
|
that.setData({
|
|
info: res.data
|
|
});
|
|
let ind = res.data[that.data.active].activity_id;
|
|
if(that.data.tab == ind){
|
|
console.log('这个tab是第一个');
|
|
// 如果是第一个导航就直接请求
|
|
this.getPage(ind);
|
|
}else{
|
|
// 不是第一个就循环找到第几个,然后在 导航事件 里面请求
|
|
for (let i = 0; i < res.data.length; i++) {
|
|
if (that.data.tab == res.data[i].activity_id) {
|
|
that.goPageYx(res.data[i].another_id);
|
|
}
|
|
}
|
|
}
|
|
setTimeout(() => {
|
|
// 获取元素高度
|
|
let query = wx.createSelectorQuery();
|
|
query.select('.navtab').boundingClientRect(rect => {
|
|
console.log(rect);
|
|
let clientHeight = rect.height;
|
|
let clientWidth = rect.width;
|
|
let ratio = 750 / clientWidth;
|
|
let height = clientHeight * ratio;
|
|
console.log(height);
|
|
that.setData({
|
|
paddingHeight:height
|
|
});
|
|
}).exec();
|
|
}, 300);
|
|
} else {
|
|
wx.showToast({
|
|
title: res.msg,
|
|
duration: 1000,
|
|
icon: "none",
|
|
});
|
|
}
|
|
},
|
|
});
|
|
},
|
|
getPage(type) {
|
|
wx.showLoading({
|
|
title: '加载中',
|
|
});
|
|
let url = "";
|
|
if(this.data.child){
|
|
url = "plugin.cps-sub-platform.frontend.plat-activity.getPlatDetail";
|
|
}else{
|
|
url = "plugin.aggregation-cps.api.plat-activity.getPlatDetail";
|
|
}
|
|
let urlStr = app.getNetAddresss(url);
|
|
app._postNetWork({
|
|
url: urlStr,
|
|
data: {
|
|
activity_id: type
|
|
},
|
|
success: (resdata) => {
|
|
var res = resdata.data;
|
|
if (res.result == 1) {
|
|
this.setData({
|
|
datas: res.data
|
|
});
|
|
let arr = [];
|
|
let topimg;
|
|
for (let i in this.data.datas.page_setting.tab_image) {
|
|
if (i == res.data.another_id) {
|
|
// banner图
|
|
topimg = `https://mini-app-img-1251768088.cos.ap-guangzhou.myqcloud.com/cps/${this.data.datas.page_setting.tab_image[i]}`;
|
|
}
|
|
arr.push(i);
|
|
}
|
|
this.setData({
|
|
buttonArr: arr,
|
|
topImg: topimg
|
|
});
|
|
console.log(this.data.datas);
|
|
wx.hideLoading({
|
|
success: (res) => {},
|
|
});
|
|
} else {
|
|
wx.showToast({
|
|
title: res.msg,
|
|
duration: 1000,
|
|
icon: "none",
|
|
});
|
|
if (res.data.bind_mobile) {
|
|
this.setData({
|
|
show1: true
|
|
});
|
|
}
|
|
wx.hideLoading({
|
|
success: (res) => {},
|
|
});
|
|
}
|
|
},
|
|
});
|
|
},
|
|
getShare() {
|
|
wx.showLoading({
|
|
title: '海报加载中',
|
|
});
|
|
let url = "";
|
|
if(this.data.child){
|
|
url = "plugin.cps-sub-platform.frontend.plat-activity.getPlatPoster";
|
|
}else{
|
|
url = "plugin.aggregation-cps.api.plat-activity.getPlatPoster";
|
|
}
|
|
let urlStr = app.getNetAddresss(url);
|
|
app._postNetWork({
|
|
url: urlStr,
|
|
data: {
|
|
activity_id: this.data.info[this.data.active].activity_id,
|
|
poster_type: 2
|
|
},
|
|
success: (resdata) => {
|
|
var res = resdata.data;
|
|
wx.hideLoading({
|
|
success: (res) => {},
|
|
});
|
|
if (res.result == 1) {
|
|
this.setData({
|
|
show: true,
|
|
shareImg: res.data.url
|
|
});
|
|
} else {
|
|
wx.showToast({
|
|
title: res.msg,
|
|
duration: 1000,
|
|
icon: "none",
|
|
});
|
|
}
|
|
},
|
|
});
|
|
},
|
|
tabrshowbtn(e) {
|
|
let bol = e.detail;
|
|
if (bol) {
|
|
this.setData({
|
|
kFootshow: false
|
|
});
|
|
}
|
|
}
|
|
}); |