123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122 |
- // 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() {
- // 展示本地存储能力
- 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,
- baseAppUrl: projectMode==2 ? 'https://wash.nanodreamtech.com/':(projectMode==1 ?'https://wash.nanodreamtech.com/':'http://127.0.0.1:8000/'),
- location:""
- },
- api:api,
- getLocation(e){
- var that=this;
- wx.startLocationUpdateBackground({
- success(res) {
- console.log('开启后台定位', res)
- wx.onLocationChange(function(res) {
- console.log('location change', res)
- that.globalData.location=res;
-
- that.login(res.latitude,res.longitude).then(function(res){
- if(res.code!=200){
-
- }
- },function(err){
- })
- })
- },
- fail(res) {
- console.log('开启后台定位失败', res)
- }
- })
- },
- login(lat="",lng=""){
- var that=this;
- return new Promise((resolve,reject)=>{
- wx.checkSession({
- success: (res) => {
- },
- fail:(res)=>{
- wx.login({
- success: 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();
- resolve(res);
- }
-
-
-
- }).catch(function(err){
- console.log(222);
- })
- }
- })
- }
- })
-
- })
- }
- })
|