// app.js var projectMode = 1;//0代表开发模式(本地环境),1代表测试模式(线上测试环境),2代表线上模式(正式运行环境) var info = wx.getSystemInfoSync(); if (info.platform != "devtools" && projectMode == 0) { projectMode = 1 } var envVersion = `${__wxConfig.envVersion}`;//develop 开发版,trial 体验版,release 正式版 if (envVersion == 'release') { projectMode = 2 } import api from './utils/api' App({ onLaunch() { //云开发 wx.cloud.init({ traceUser: true, }) wx.setStorageSync('islocation', false) const logs = wx.getStorageSync('logs') || [] logs.unshift(Date.now()) wx.setStorageSync('logs', logs) var that = this; this.getLocation(); // 登录 wx.checkSession({ success: res => { console.log(res) }, fail: (res) => { } }) this.globalData.btnInfo = wx.getMenuButtonBoundingClientRect() console.log(this.globalData.btnInfo, '按钮信息'); }, globalData: { userInfo: null, btnInfo: null, status: ['可下单', '服务中', '已满柜', '暂停服务'], baseAppUrl: projectMode == 2 ? 'https://wash.nanodreamtech.com/' : (projectMode == 1 ? 'https://wash.nanodreamtech.com/' : 'http://127.0.0.1:8000/'), location: "", islocation: true }, api: api, getLocation(e) { var that = this; wx.getLocation({ success(res) { console.log('开启后台定位', res) console.log('location change', res) that.globalData.location = res; wx.setStorageSync('latitude', res.latitude) wx.setStorageSync('longitude', res.longitude) wx.checkSession({ success: res => { }, fail: (res) => { that.login(res.latitude, res.longitude).then(function (res) { }) } }) },fail(res) { console.log('开启后台定位失败', res) that.globalData.islocation = false; wx.setStorageSync('islocation', true) wx.showLoading({ title: '请授权获取地址。', }) setTimeout(function () { wx.hideLoading(); }, 2000) } }) }, login(lat = "", lng = "") { var that = this; return new Promise((resolve, reject) => { console.log(3333333) wx.checkSession({ success: (res) => { console.log(444444) }, fail: (res) => { wx.login({ success: res => { console.log(res) // 发送 res.code 到后台换取 openId, sessionKey, unionId that.api.useApi(that.globalData.baseAppUrl + "api/login", { code: res.code, lat: lat, lng: lng, appid: wx.getAppBaseInfo().host.appId }, "post").then(function (res) { wx.showLoading({ title: '登录中', }) if (res.code != 200) { setTimeout(function () { that.login(lat, lng); }, 1000); } else { wx.hideLoading(); wx.setStorageSync('token', res.message.token); wx.setStorageSync('uid', res.message.user_id); wx.setStorageSync('exp_time', res.message.exp_time); wx.setStorageSync('seisson_key', res.message.session_key); wx.setStorageSync('phone', res.message.phone); wx.setStorageSync('nid', res.message.network_id);//当前网点选择id resolve(res); } }).catch(function (err) { console.log(222); }) } }) } }) }) } })