247 lines
8.5 KiB
JavaScript
247 lines
8.5 KiB
JavaScript
//app.js wx9c68fbf7886ea9c4 租房的 wxcf0a799771cf2ae6 港校的
|
||
var initial_url = 'https://app.gter.net/tenement';
|
||
var __ = require('./utils/miucms.js');
|
||
|
||
// 保存原始的Page构造器
|
||
const originPage = Page;
|
||
|
||
// 重写Page构造器
|
||
Page = function (pageConfig) {
|
||
// 添加全局的onShow逻辑
|
||
const originOnLoad = pageConfig.onLoad;
|
||
pageConfig.onLoad = function () {
|
||
__.statistics({})
|
||
if (originOnLoad) originOnLoad.apply(this, arguments);
|
||
};
|
||
|
||
const originOnShare = pageConfig.onShareAppMessage;
|
||
if (originOnShare) {
|
||
// pageConfig.onShareAppMessage = function () {
|
||
pageConfig.onShareAppMessage = function (e) {
|
||
__.statistics({
|
||
name: "share"
|
||
})
|
||
// if (originOnShare) originOnShare.apply(this, arguments);
|
||
return originOnShare.apply(this, [e]);
|
||
};
|
||
}
|
||
|
||
// 调用原始的Page函数
|
||
return originPage(pageConfig);
|
||
};
|
||
|
||
App({
|
||
randomString(n) {
|
||
let str = 'abcdefghijklmnopqrstuvwxyz9876543210';
|
||
let tmp = '',
|
||
i = 0,
|
||
l = str.length;
|
||
for (i = 0; i < n; i++) {
|
||
tmp += str.charAt(Math.floor(Math.random() * l));
|
||
}
|
||
return tmp;
|
||
},
|
||
|
||
autoUpdate: function () {
|
||
var self = this
|
||
// 获取小程序更新机制兼容
|
||
if (wx.canIUse('getUpdateManager')) {
|
||
const updateManager = wx.getUpdateManager()
|
||
updateManager.onCheckForUpdate(function (res) {
|
||
if (res.hasUpdate) {
|
||
wx.showModal({
|
||
title: '更新提示',
|
||
content: '检测到新版本,是否下载新版本并重启小程序?',
|
||
success: function (res) {
|
||
if (res.confirm) self.downLoadAndUpdate(updateManager)
|
||
else if (res.cancel) {
|
||
wx.showModal({
|
||
title: '温馨提示',
|
||
content: '本次版本更新涉及到新的功能添加,旧版本无法正常访问',
|
||
showCancel: false,
|
||
confirmText: "确定更新",
|
||
success: function (res) {
|
||
//下载新版本,并重新应用
|
||
if (res.confirm) self.downLoadAndUpdate(updateManager)
|
||
}
|
||
})
|
||
}
|
||
}
|
||
})
|
||
}
|
||
})
|
||
} else {
|
||
wx.showModal({
|
||
title: '提示',
|
||
content: '当前微信版本过低,无法使用该功能,请升级到最新微信版本后重试。',
|
||
})
|
||
}
|
||
},
|
||
downLoadAndUpdate: function (updateManager) {
|
||
var self = this
|
||
wx.showLoading();
|
||
updateManager.onUpdateReady(function () {
|
||
wx.hideLoading()
|
||
updateManager.applyUpdate()
|
||
})
|
||
updateManager.onUpdateFailed(function () {
|
||
wx.hideLoading()
|
||
// 新的版本下载失败
|
||
wx.showModal({
|
||
title: '已经有新版本了哟~',
|
||
content: '新版本已经上线,请您删除当前小程序,重新搜索打开',
|
||
})
|
||
})
|
||
},
|
||
onLaunch: function (options) {
|
||
__.statistics({
|
||
data: {
|
||
scene: options.scene
|
||
},
|
||
path: options.path,
|
||
query: options.query,
|
||
name: "onLaunch"
|
||
})
|
||
|
||
this.globalData.options = options;
|
||
|
||
__.initial(this)
|
||
if (wx.getEnterOptionsSync().query && wx.getEnterOptionsSync().query.scancode_time) {
|
||
this.globalData.scancode_time = wx.getEnterOptionsSync().query.scancode_time
|
||
}
|
||
if (wx.getUserProfile) {
|
||
this.globalData.canIUseGetUserProfile = true;
|
||
}
|
||
|
||
|
||
try {
|
||
this.computeNavigateBarHeight();
|
||
} catch (e) {
|
||
// 获取系统信息失败
|
||
this.setData({
|
||
windowHeight: 812,
|
||
totalTopHeight: 68,
|
||
statusBarHeight: 20,
|
||
titleBarHeight: 48,
|
||
titleWidth: 87
|
||
});
|
||
}
|
||
this.autoUpdate()
|
||
|
||
let getAccountInfoSync = wx.getAccountInfoSync();
|
||
if (getAccountInfoSync.miniProgram.appId == "wx9c68fbf7886ea9c4") {
|
||
this.globalData.topTitle = "寄托香港租房"
|
||
this.globalData.miniProgram = "xg"
|
||
} else {
|
||
this.globalData.topTitle = "寄托港校租房"
|
||
this.globalData.miniProgram = "gx"
|
||
}
|
||
|
||
},
|
||
|
||
computeNavigateBarHeight: function () {
|
||
var systemInfo = wx.getSystemInfoSync();
|
||
var data = wx.getMenuButtonBoundingClientRect()
|
||
let totalTopHeight = data.bottom;
|
||
let windowHeight = systemInfo.windowHeight,
|
||
windowWidth = systemInfo.windowWidth,
|
||
statusBarHeight = data.top;
|
||
this.globalData.screen_data = {
|
||
windowHeight: windowHeight,
|
||
windowWidth: windowWidth,
|
||
totalTopHeight: totalTopHeight + 6,
|
||
statusBarHeight: statusBarHeight,
|
||
titleBarHeight: data.height,
|
||
titleWidth: data.widthinitial,
|
||
bottomLift: systemInfo.screenHeight - systemInfo.safeArea.bottom
|
||
}
|
||
},
|
||
onShow: function (options) {
|
||
this.globalData.source = options.path || '';
|
||
|
||
// 判断socket从后台打开 并且已经断开链接了,需要重启
|
||
// if (this.globalData.isHideState && this.globalData.socketTask && this.globalData.socketTask['readyState'] != 1) {
|
||
// }
|
||
// this.globalData.isHideState = false
|
||
|
||
const timer = setInterval(() => {
|
||
if (this.globalData.config && this.globalData.config.lists) {
|
||
__.useSocket()
|
||
clearInterval(timer)
|
||
}
|
||
}, 100)
|
||
},
|
||
onHide: function () {
|
||
this.globalData.isHideState = true
|
||
},
|
||
onError: function () {
|
||
// 这里回调错误信息
|
||
},
|
||
// get: function () {
|
||
// return this.globalData.config;
|
||
// },
|
||
return_data: function (res) {
|
||
var json = res.data;
|
||
var data = typeof res.data == 'string' ? JSON.parse(res.data) : res.data;
|
||
return data;
|
||
},
|
||
globalData: {
|
||
baseURL: "https://app.gter.net",
|
||
token: null,
|
||
title: null,
|
||
session: null,
|
||
code: null,
|
||
user: {},
|
||
userInfo: {},
|
||
options: {},
|
||
config: {},
|
||
notice: {},
|
||
source: '',
|
||
header: {
|
||
'content-type': 'application/json',
|
||
'Accept': 'application/json, text/plain',
|
||
'Cookie': 'miucms_session=' + wx.getStorageSync('Authorization'),
|
||
'Authorization': wx.getStorageSync('Authorization') || ''
|
||
},
|
||
new_reply: false,
|
||
// 寄托租房独有字段
|
||
choose: {},
|
||
kw: '',
|
||
status: 0,
|
||
screen_data: {},
|
||
StudentapartmentNew: null,
|
||
isUserAuthorization: 0, //用户点击授权:0:未知,1:未授权,2:已授权
|
||
listTab: {},
|
||
canIUseGetUserProfile: false,
|
||
scancode_time: "",
|
||
irentCouponBig: false,
|
||
unreadMessagesState: false,
|
||
firstWxParseImgLoaddState: false,
|
||
topTitle: "", // 寄托港校租房 寄托香港租房
|
||
miniProgram: "", // 处于那个小程序 xg gx
|
||
bgColorObj: { // 列表 角的颜色
|
||
1: "#50e3c2",
|
||
6: "#b3c7f4"
|
||
},
|
||
|
||
isMapFindState: false, // 地图找房入口
|
||
isShowVideo: true, // 是否显示视频
|
||
|
||
socketTask: null, // 全局的 socket 值
|
||
isHideState: true, // 判断是否 隐藏了 在 onshow 为 true 是代表小程序后台打开
|
||
|
||
brandSelectionObj: {}, // 品牌公寓筛选全局值
|
||
personSelectionObj: {}, // 个人房源筛选全局值
|
||
intermediarySelectionObj: {}, // 中介房源筛选全局值
|
||
restSelectionObj: {}, // 求房源筛选全局值
|
||
editShelfState: "", // 判断 我的页面 在点击 编辑上架 后重新进入是否需要 刷新数据的 update 代表需要更新数据
|
||
|
||
popwindow: "", // 首页弹窗信息
|
||
|
||
isConnected: false,
|
||
|
||
offerkaipingadvertisement: {}, // 开屏广告 数据
|
||
offerkaipingadvertisementState: false, // 开屏广告 状态
|
||
initialState: false,
|
||
}
|
||
}) |