最近在看微信小程序,遇到地理定位显示城市名称的问题。本文就是记录这一过程。

  • 解决方案                                                                                                                                              

    小程序的wx.getLocation()获得是经纬度并不包含地名,所以要通过经纬度用相应的地图转换出地名(本文使用的是百度地图)。

  • 过程                                                                                                                                                     
  1. 代 码:

  1.1 代码详解:

  wx.getLocation(object):获取当前的地理位置、速度。注意:需要用户授权地理定位权限。

    详细参数说明请查看小程序API:https://developers.weixin.qq.com/miniprogram/dev/api/location.html#wxgetlocationobject

 让我们看看wx.getLocation()成功后获得到的数据:

  

 从获得到的数据我们可以看到并没有我们想要的地名,因此就需要我们把经纬度转换成相应的地名,本文使用的是百度地图相应功能转换出相应地名。

  1.2  百度地图的准备工作

    1.在使用百度地图API之前,首先要获得百度地图的密钥ak,ak由百度地图方生成;

    2.打开百度地图开放平台,导航栏处选择 “开发文档” > “微信小程序JavaScript API”,在“入门指南”处有详细介绍怎么生成密钥ak,本文不再介绍。

      参考文档:http://lbsyun.baidu.com/index.php?title=wxjsapi/guide/key

    3.复制生成好的ak,把ak粘贴到小程序中。其实,百度地图有提供小程序使用的地图api的压缩包,但是出于小程序发布时对大小的限制,我选择了使用链接。

      百度地图线上转换链接地址:https://api.map.baidu.com/geocoder/v2/?ak=获得的AK&location=' + latitude + ',' + longitude + '&output=json'

    4.使用小程序的账号登录微信公众平台(https://mp.weixin.qq.com/),在“设置” 中选择 “开发设置”,把百度地图api的url添加到request合法域名中。

     注意:百度地图提供的有关于小程序API的下载包,不想使用链接地址的可以使用下载包,出于小程序发布时对大小的限制,本文使用的是链接地址未使用下载包。

    

    

    5.此时准备工作完成,便可以直接在小程序中根据经纬度转换出相应的地名了,代码如下图。

        

    让我们看看success里的参数输出:

    获取的参数中肯定有一款适合你~~~

   OK,本文仅供参考,转载本文请注明出处,本文到这就结束了,谢谢。~~~

附完整代码:

  wxml中进行数据绑定。

转载于:https://www.cnblogs.com/liuyuanfang/p/9748074.html

微信小程序:获取地理定位和显示相应的城市名称。相关推荐

  1. 解决通过微信小程序获取的定位坐标在百度地图渲染误差过大问题

    微信小程序可以获取两种坐标系的经纬度,分别为WGS84(大地坐标系)和GCJ02(国测局坐标系)而百度却是在其基础上进行加密形成了自己的一套坐标系bd09(百度坐标系),如果直接用微信小程序获取的经纬 ...

  2. 微信小程序获取当前定位 超简单

    1:去腾讯地图官网下载地图工具包放到lib文件夹下 2:在所用的js里引入 var QQMapWX = require("../../libs/qqmap-wx-jssdk.js" ...

  3. 微信小程序获取实时定位(记录)

    首先在app.json里配置: "requiredBackgroundModes": ["location"] 在需要定位的页面js里: getUserLoca ...

  4. 微信小程序获取位置后只显示省市

    this.data.city是获取到的城市(具体地址)//取出省市区关键字段得位置let provinceIndex = this.data.city.indexOf("省")le ...

  5. 微信小程序python解析获取用户手机号_微信小程序获取用户手机号

    获取微信用户绑定的手机号,需先调用wx.login接口. 小程序获取code. 后台得到session_key,openid. 组件触发getPhoneNumber 因为需要用户主动触发才能发起获取手 ...

  6. 微信小程序获取当前所在城市(地区定位与切换)

    小程序地区定位与切换 添加链接描述 添加链接描述 添加链接描述 <text class="chengshi">{{citynames}}</text>< ...

  7. 微信小程序获取定位后使用腾讯地图解析到市位置

    微信小程序获取定位解析当前城市位置 咱们就话不多说,这呢是我第一次发布文章,第一次使用,所以使用的也比较简单,也还不是很熟悉,接下来呢就直接上代码吧,希望喜欢的朋友可以关注关注嘿嘿 首先我们需要引入腾 ...

  8. 微信小程序获取视口高度,设置 video 视频全屏显示

    微信小程序 获取视口高度 获取视口高度 可用于设置视频全屏显示效果 及其他效果显示 js中:(可以在onLoad中直接使用,或写入方法中) let that = this;// 获取系统信息wx.ge ...

  9. 微信小程序获取OneNet数据显示温湿度

    微信小程序获取OneNet数据显示温湿度 一.OneNet平台 ​ 1.我这里的设备是通过MQTT协议连接到OneNet平台的 ​ 2.微信小程序获取OneNet数据需要得到产品的api-key.设备 ...

最新文章

  1. java翻译smali,请各位好人帮我翻译Java成smali(没有false)
  2. LINUX之前UNIX的历史
  3. C++vector的reserve和resize比原来的容量小
  4. 清华大学 lt;现代软件工程gt; 项目小组名单
  5. html中foreach遍历list,foreach遍历----for(object o: list)
  6. php 保护图片地址,如何使用PHP正确保护图片上传?
  7. 浙江计算机三级考试单片机试题,历年浙江省计算机三级单片机
  8. centos 下 docker 的 安装与使用 (一)
  9. 基于JMF RTP的音视频传输
  10. CCF-CSP认证历年真题解
  11. 荐书 | 22本颠覆我们认知的思维方式(上)
  12. 自动生成Makefile的全过程详解2
  13. 解决双蛋问题的C代码实现
  14. iOS 3级滚动地址
  15. 网络变压器通频带、网络变压器插入损耗及矩形脉冲失真的关系
  16. 7-1 哈夫曼编码(实验) 最全代码解析
  17. 自动化测试——执行javaScript脚本
  18. 【Springboot】Spring与Springboot简介
  19. mysql数据库 mdf 文件_如何连接到MDF数据库文件?
  20. C++三只小猪称体重(比较最大值)

热门文章

  1. PHP ----MySQL 数据库
  2. oracle创建过程带有编译错误,警告:创建的函数带有编译错误
  3. java配置常量_Java构建时间常量配置
  4. css面试基础知识,CSS知识点与面试题解析
  5. java 文件引用路径_JAVA项目引用文件路径问题
  6. 浏览器ERR_PROXY_CONNECTION_FAILED解决方法
  7. wxpython 内嵌字体_【wxPython】wx.font类字体
  8. win7 计算机右键没有属性,系统之家windows7旗舰版计算机上右键菜单没有属性怎么办?...
  9. linux redis数据库安装配置,Linux系统中redis的安装配置步骤
  10. JXLS导出Excel(模板导出)