手记

【九月打卡】第16天 多端全栈项目实战

课程名称:多端全栈项目实战:商业级代驾全流程落地


课程章节:  华夏代驾全栈小程序实战


课程讲师: 神思者


课程内容:

    

        前端实时上传gps定位


课程收获:

    

        首先我们需要定义一个数组

        将定位坐标存在数组内 可以减少ajax得请求次数 ,减少服务器压力


        然后是要让屏幕常亮  避免司机开到一半需要触屏唤醒

    //保持屏幕常亮,避免手机休眠
    wx.setKeepScreenOn({
        keepScreenOn: true
    });

        

        uni.startLocationUpdate 开启实时定位


        uni.startLocationUpdate开启后会促发  wx.onLocationChange

        在 wx.onLocationChange里面可以获取到实时得经纬度 包括速度


        这里需要取出  司机得状态  如果司机状态开启 就可以开始接单

        

        如果司机是开始接单状态 就需要实时发送ajax定位

    

        同时也要获取 司机得接单意向 settings


        调用接口  /driver/location/updateLocationCache

        对返回得数据进行处理

   success: function(resp) {
      if (resp.statusCode == 401) {
           uni.redirectTo({
               url: '/pages/login/login'
            });
      } else if (resp.statusCode == 200 && resp.data.code == 200) {
           let data = resp.data;
           if (data.hasOwnProperty('token')) {
               let token = data.token;
               uni.setStorageSync('token', token);
           }
               console.log("定位更新成功")
           } else {
               console.error('更新GPS定位信息失败', resp.data);
           }
      },
      fail: function(error) {
           console.error('更新GPS定位信息失败', error);
      }

        


 处理完成后 需要调用  uni.$emit('updateLocation', location); 










0人推荐
随时随地看视频
慕课网APP