doum
2026-04-21 3539d67072a5fd179bd44385ebefce0d1a6e8cb4
small-program/App.vue
@@ -1,6 +1,7 @@
<script>
   import { mapState } from 'vuex'
   var QQMapWX = require('@/utils/qqmap-wx-jssdk.js')
   // var QQMapWX = require('@/utils/qqmap-wx-jssdk.js')
   var amapFile = require('@/utils/amap-wx.130.js')
   export default {
      computed: {
         ...mapState(['userInfo','token'])
@@ -14,9 +15,10 @@
                  let { code } = loginRes;
                  let res = await that.$u.api.wxLogin({ code })
                  if (res && res.code === 200) {
                     console.log(res, '==================登录成功');
                     // 判断有无openid
                     if (res.data.openid) {
                        await that.$store.commit('setOpenId', res.data.openid)
                        await that.$store.commit('setOpenid', res.data.openid)
                     }
                     // 判断有无token
                     if (res.data.token) {
@@ -25,7 +27,7 @@
                     // 判断有无用户信息
                     if (res.data.member) {
                        await that.$store.commit('setUserInfo', res.data.member)
                        await that.$store.commit('setOpenId', res.data.member.openId)
                        await that.$store.commit('setOpenid', res.data.member.openId)
                     }
                     // 设置定位
                     await that.checkLocationAuth()
@@ -37,7 +39,7 @@
            let res = await that.$u.api.getMemberInfo({})
            if (res.code === 200) {
               await that.$store.commit('setUserInfo', res.data)
               await that.$store.commit('setOpenId', res.data.openId)
               await that.$store.commit('setOpenid', res.data.openId)
            }
            // 设置定位
            await that.checkLocationAuth()
@@ -59,34 +61,58 @@
               isHighAccuracy: true,
               success: function (addr) {
                  const locParam = { latitude: addr.latitude, longitude: addr.longitude };
                  const qqmapsdk = new QQMapWX({
                     key: 'WE3BZ-HN6WS-ONDOH-62QCV-MNL6F-5NFNE'
                  });
                  qqmapsdk.reverseGeocoder({
                     locParam,
                     success: async function(res) {
                        console.log(res, '==================获取地址');
                        let info = res.result;
                        locParam.province = info.address_component.province;
                        locParam.city = info.address_component.city;
                        locParam.area = info.address_component.district;
                        locParam.street = info.address_component.street;
                        var ta = info.address  || '地址获取失败' ;
                        if(info.formatted_addresses  && info.formatted_addresses.recommend){
                           ta =info.formatted_addresses.recommend
                        }
                        locParam.address =ta
                        const resCity = await that.$u.api.getCityByName({ cityName: locParam.city })
                        if (resCity.code === 200) {
                           locParam.cityId = resCity.data.id
                        }
                        that.$store.commit('setPosition',locParam)
                  uni.setStorageSync('address', locParam);
                  var address = null
                  var myAmapFun = new amapFile.AMapWX({ key: 'e4d46c87adf151dca20060317592b1b6' });
                  myAmapFun.getRegeo({
                     location: addr.longitude + ',' + addr.latitude,
                     success: function(data) {
                        console.log(data, '==================获取地址');
                        let info = data[0];
                        locParam.province = info.province;
                        locParam.city = info.city;
                        locParam.area = info.district;
                        locParam.street = info.street;
                        var ta = info.name || '地址获取失败';
                        locParam.address = ta
                        that.$store.commit('setPosition', locParam)
                        that.$isResolve()
                     },
                     fail: (err) => {
                     fail: function(err) {
                        console.error('获取位置失败===========', err);
                        that.$store.commit('setPosition', locParam)
                        that.$isResolve()
                     }
                  });
                  // const qqmapsdk = new QQMapWX({
                  //    key: 'WE3BZ-HN6WS-ONDOH-62QCV-MNL6F-5NFNE'
                  // });
                  // qqmapsdk.reverseGeocoder({
                  //    locParam,
                  //    success: async function(res) {
                  //       console.log(res, '==================获取地址');
                  //       let info = res.result;
                  //       locParam.province = info.address_component.province;
                  //       locParam.city = info.address_component.city;
                  //       locParam.area = info.address_component.district;
                  //       locParam.street = info.address_component.street;
                  //       var ta = info.address  || '地址获取失败' ;
                  //       if(info.formatted_addresses  && info.formatted_addresses.recommend){
                  //          ta =info.formatted_addresses.recommend
                  //       }
                  //       locParam.address =ta
                  //       const resCity = await that.$u.api.getCityByName({ cityName: locParam.city })
                  //       if (resCity.code === 200) {
                  //          locParam.cityId = resCity.data.id
                  //       }
                  //       that.$store.commit('setPosition',locParam)
                  //       that.$isResolve()
                  //    },
                  //    fail: (err) => {
                  //       that.$isResolve()
                  //    }
                  // });
               }
            });
         },
@@ -138,31 +164,25 @@
               success: (addr) => {
                  const locParam = { latitude: addr.latitude, longitude: addr.longitude };
                  uni.setStorageSync('address', locParam);
                  var address =null
                  const qqmapsdk = new QQMapWX({
                      key: 'WE3BZ-HN6WS-ONDOH-62QCV-MNL6F-5NFNE' //腾讯地图申请的key(后续需要公司提供,个人开发者额度有限)
                   });
                    // 腾讯地图逆地理编码
                  qqmapsdk.reverseGeocoder({
                     locParam,
                     success: function(res) {
                        console.log(res, '==================获取地址');
                        let info = res.result;
                        locParam.province = info.address_component.province;
                        locParam.city = info.address_component.city;
                        locParam.area = info.address_component.district;
                        locParam.street = info.address_component.street;
                        var ta = info.address  || '地址获取失败' ;
                        if(info.formatted_addresses  && info.formatted_addresses.recommend){
                           ta =info.formatted_addresses.recommend
                        }
                        locParam.address =ta
                        that.$store.commit('setPosition',locParam)
                  var address = null
                  var myAmapFun = new amapFile.AMapWX({ key: 'f2e6c0bfcac14c27b4f0d6d0d5b9d7d' });
                  myAmapFun.getRegeo({
                     location: addr.longitude + ',' + addr.latitude,
                     success: function(data) {
                        console.log(data, '==================获取地址');
                        let info = data[0];
                        locParam.province = info.province;
                        locParam.city = info.city;
                        locParam.area = info.district;
                        locParam.street = info.street;
                        var ta = info.name || '地址获取失败';
                        locParam.address = ta
                        that.$store.commit('setPosition', locParam)
                        that.$isResolve()
                     },
                     fail: (err) => {
                     fail: function(err) {
                        console.error('获取位置失败===========', err);
                        that.$store.commit('setPosition',locParam)
                        that.$store.commit('setPosition', locParam)
                        that.$isResolve()
                     }
                  });