微信小程序获取当前位置

最近在做的小程序设计到获取当前位置,当员工签到时需要去获取员工的当前位置进行签到,我采用的是腾讯地图的api,如果不喜欢这个,可以自行选择百度跟高德地图的api。

1:获取位置微信公众平台有接口文档,文档链接:https://developers.weixin.qq.com/miniprogram/dev/api/location/wx.getLocation.html

微信小程序获取当前位置

微信公众平台给的有示例文档

微信小程序获取当前位置

包括一些参数跟回调函数都写得有!

好,开始上代码!

先需要在小程序app.json中加上我标出的红色的框的代码

(如下图)微信小程序获取当前位置

然后点击签到,确认签到后,加入微信的给的示例

wx.getLocation({

            type: 'wgs84',

            success (res) {

              console.log('qiandao',res)

              const latitude = res.latitude

              const longitude = res.longitude

              const speed = res.speed

              const accuracy = res.accuracy

            }

           })

会有弹出地理位置授权(如下图)

微信小程序获取当前位置

点击确定后,我把这两个值打印出来,现在需要根据如下的值进行逆地址解析

微信小程序获取当前位置

进入腾讯地图的api,找到微信小程序JavaScript SDK,链接:https://lbs.qq.com/miniProgram/jsSdk/jsSdkGuide/jsSdkOverview,然后需要申请开发者**!操作图如下:

微信小程序获取当前位置

微信小程序获取当前位置

没有注册的用户需要先注册一个,然后填写你的一些信息,

微信小程序获取当前位置

 顶部有个key设置,这个你可以把它保存到小程序的js中去,都弄好之后下载腾讯地图的sdk

然后将腾讯地图的sdk放到你所需要的页面中

 

微信小程序获取当前位置

    var qqmap=new adresspath({

            key:util.adrekey

          })

          wx.getLocation({

            type: 'wgs84',

            success (res) {

              console.log('qiandao',res)

              var latitude = res.latitude;

              var longitude = res.longitude;

              qqmap.reverseGeocoder({

                success:function(res){

                console.log('地址',res)

                that.setData({

                  address:res.result.address

                })

 

                }

              })

           

            }

           })

 address:这个就是我们最后要的地址啦,如果有不对的或者有错别字的地方,哈哈,欢迎指正!