微信小程序之获取当前位置经纬度以及地图显示详解


Posted in Javascript onMay 09, 2017

最近刚开始接触微信小程序,在弄懂其结构以及相关接口之后,准备着手实现一个小程序,功能包括--获取用户当前位置的经纬度,在地图上查看位置,通过地图获取不同位置的经纬度。

微信小程序的主体部分包括:

微信小程序之获取当前位置经纬度以及地图显示详解

新增页面需要在app.json进行配置:

"pages":[
  "pages/index/index",
  "pages/location/location",
  "pages/logs/logs"
 ]

通过在视图层调用bindtap与逻辑层中的方法匹配--实现页面跳转:

视图层

<view class="location" bindtap="locationViewTap">
  <button>获取用户当前位置</button>
 </view>

逻辑层

locationViewTap: function(){
  wx.navigateTo({
   url: '../location/location'
  })
 }

通过在视图层调用bindtap与逻辑层中的方法匹配--实现方法调用:

视图层

<button bindtap="mapViewTap" style="margin:10px">查看地图</button>
  <button bindtap="chooseMapViewTap" style="margin:10px">选择位置</button>

逻辑层

mapViewTap:function(){
    wx.getLocation({
     type: 'gcj02', //返回可以用于wx.openLocation的经纬度
     success: function(res) {
      console.log(res)
      wx.openLocation({
       latitude: res.latitude,
       longitude: res.longitude,
       scale: 28
      })
    }
   })
 }

有关地图位置的三个接口:

(1) wx.getLocation(OBJECT) 获取当前的地理位置、速度

success返回参数:

latitude 纬度,浮点数,范围为-90~90,负数表示南纬
longitude 经度,浮点数,范围为-180~180,负数表示西经
speed 速度,浮点数,单位m/s
accuracy 位置的精确度
   

(2) wx.openLocation(OBJECT)  使用微信内置地图查看位置

OBJECT参数说明:

参数 类型 必填 说明
latitude Float 纬度,范围为-90~90,负数表示南纬
longitude Float 经度,范围为-180~180,负数表示西经
scale INT 缩放比例,范围5~18,默认为18
name String 位置名
address String 地址的详细说明
success Function 接口调用成功的回调函数
fail Function 接口调用失败的回调函数
complete Function 接口调用结束的回调函数(调用成功、失败都会执行)

(3) wx.chooseLocation(OBJECT) 打开地图选择位置

success返回参数:

name 位置名称
address 详细地址
latitude 纬度,浮点数,范围为-90~90,负数表示南纬
longitude 经度,浮点数,范围为-180~180,负数表示西经

实现效果

 利用getLocation获取当前位置的经纬度坐标,openLocation打开微信内置地图查看

微信小程序之获取当前位置经纬度以及地图显示详解 

微信小程序之获取当前位置经纬度以及地图显示详解  

利用chooseLocation选取位置,并将位置信息的经纬度实时响应显示

微信小程序之获取当前位置经纬度以及地图显示详解 

微信小程序之获取当前位置经纬度以及地图显示详解

注意事项:

(1) 利用getLocation()获得的地图参数信息只有两个

  微信小程序之获取当前位置经纬度以及地图显示详解  

利用chooselocation返回的参数如下:

          微信小程序之获取当前位置经纬度以及地图显示详解

(2) this.setData修改json里面的值

逻辑层中的json数据可以通过WXML文件{{json}}显示出来:

微信小程序之获取当前位置经纬度以及地图显示详解

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery插件jbox使用iframe关闭问题
Feb 09 Javascript
无限树Jquery插件zTree的常用功能特性总结
Sep 11 Javascript
FF(火狐)浏览器无法执行window.close()解决方案
Nov 13 Javascript
jQuery对指定元素中指定字符串进行替换的方法
Mar 17 Javascript
JS 作用域与作用域链详解
Apr 07 Javascript
JavaScrip调试技巧之断点调试
Oct 22 Javascript
Node.js如何自动审核团队的代码
Jul 20 Javascript
详解windows下vue-cli及webpack 构建网站(二)导入bootstrap样式
Jun 17 Javascript
Three.js开发实现3D地图的实践过程总结
Nov 20 Javascript
Vue.js 点击按钮显示/隐藏内容的实例代码
Feb 08 Javascript
js中int和string数据类型互相转化实例
Jan 16 Javascript
js面试题之异步问题的深入理解
Sep 20 Javascript
JS中的数组转变成JSON格式字符串的方法
May 09 #Javascript
jQuery插件开发发送短信倒计时功能代码
May 09 #jQuery
JavaScrpt的面向对象全面解析
May 09 #Javascript
ES6正则表达式的一些新功能总结
May 09 #Javascript
Vuex和前端缓存的整合策略详解
May 09 #Javascript
基于JS实现限时抢购倒计时间表代码
May 09 #Javascript
js使用i18n实现页面国际化的方法
May 09 #Javascript
You might like
超强分页类2.0发布,支持自定义风格,默认4种显示模式
2007/01/02 PHP
发布一个用PHP fsockopen写的HTTP下载的类
2007/02/22 PHP
php实现rc4加密算法代码
2012/04/25 PHP
解析PHP获取当前网址及域名的实现代码
2013/06/23 PHP
php遍历目录与文件夹的多种方法详解
2013/11/14 PHP
destoon供应信息title调用出公司名称的方法
2014/08/22 PHP
ThinkPHP框架分布式数据库连接方法详解
2017/03/14 PHP
phpcms配置列表页以及获得文章发布时间
2017/07/04 PHP
用javascript将数据库中的TEXT类型数据动态赋值到TEXTAREA中
2007/04/20 Javascript
Jquery 实现Tab效果 思路是js思路
2010/03/02 Javascript
js 图片等比例缩放代码
2010/05/13 Javascript
使用jsonp完美解决跨域问题
2014/11/27 Javascript
jQuery中is()方法用法实例
2015/01/06 Javascript
jQuery中(function($){})(jQuery)详解
2015/07/15 Javascript
jQuery实现两款有动画功能的导航菜单代码
2015/09/16 Javascript
JS清除字符串中重复值的实现方法
2016/08/03 Javascript
微信小程序动态显示项目倒计时效果
2017/06/13 Javascript
详解vue.js+UEditor集成 [前后端分离项目]
2017/07/07 Javascript
JavaScript简单实现合并两个Json对象的方法示例
2017/10/16 Javascript
vue实现点击选中,其他的不选中方法
2018/09/05 Javascript
vue-froala-wysiwyg 富文本编辑器功能
2019/09/19 Javascript
javascript canvas API内容整理
2020/02/16 Javascript
[06:07]辉夜杯现场观众互动 “比谁远送显示器”
2015/12/26 DOTA
Python translator使用实例
2008/09/06 Python
全面了解Python的getattr(),setattr(),delattr(),hasattr()
2016/06/14 Python
Python使用win32 COM实现Excel的写入与保存功能示例
2018/05/03 Python
深入浅析python 中的匿名函数
2018/05/21 Python
获取python的list中含有重复值的index方法
2018/06/27 Python
通过实例解析python and和or使用方法
2020/11/14 Python
美国求婚钻戒网站:Super Jeweler
2016/08/27 全球购物
Kathmandu新西兰官网:新西兰户外运动品牌
2019/07/27 全球购物
估算杭州有多少软件工程师
2015/08/11 面试题
简单的项目建议书模板
2014/03/12 职场文书
学雷锋标兵事迹材料
2014/08/18 职场文书
求职推荐信范文
2015/03/27 职场文书
酒店总经理岗位职责
2015/04/01 职场文书