微信小程序开发API 地图组件控制

浏览:
字体:
发布时间:2018-01-03 19:45:38
来源:

wx.createMapContext(mapId)


创建并返回 map 上下文 mapContext 对象。在自定义组件下,第二个参数传入组件实例this,以操作组件内 <map/> 组件


mapContext

mapContext通过 mapId 跟一个<map/>组件绑定,通过它可以操作对应的<map/>组件。

mapContext 对象的方法列表

方法参数说明最低版本getCenterLocationOBJECT获取当前地图中心的经纬度,返回的是 gcj02 坐标系,可以用于 wx.openLocation moveToLocation无将地图中心移动到当前定位点,需要配合map组件的show-location使用 translateMarkerOBJECT平移marker,带动画1.2.0includePointsOBJECT缩放视野展示所有经纬度1.2.0getRegionOBJECT获取当前地图的视野范围1.4.0getScaleOBJECT获取当前地图的缩放级别1.4.0

getCenterLocation 的 OBJECT 参数列表

参数类型必填说明successFunction否接口调用成功的回调函数 ,res = { longitude: "经度", latitude: "纬度"}failFunction否接口调用失败的回调函数completeFunction否接口调用结束的回调函数(调用成功、失败都会执行)

translateMarker 的 OBJECT 参数列表

参数类型必填说明markerIdNumber是指定markerdestinationObject是指定marker移动到的目标点autoRotateBoolean是移动过程中是否自动旋转markerrotateNumber是marker的旋转角度durationNumber否动画持续时长,默认值1000ms,平移与旋转分别计算animationEndFunction否动画结束回调函数failFunction否接口调用失败的回调函数

includePoints 的 OBJECT 参数列表

参数类型必填说明pointsArray是要显示在可视区域内的坐标点列表,[{latitude, longitude}]paddingArray否坐标点形成的矩形边缘到地图边缘的距离,单位像素。格式为[上,右,下,左],安卓上只能识别数组第一项,上下左右的padding一致。开发者工具暂不支持padding参数。

getRegion 的 OBJECT 参数列表

参数类型必填说明successFunction否接口调用成功的回调函数,res = {southwest, northeast},西南角与东北角的经纬度failFunction否接口调用失败的回调函数completeFunction否接口调用结束的回调函数(调用成功、失败都会执行)

getScale 的 OBJECT 参数列表

参数类型必填说明successFunction否接口调用成功的回调函数,res = {scale}failFunction否接口调用失败的回调函数completeFunction否接口调用结束的回调函数(调用成功、失败都会执行)


示例代码:

<!-- map.wxml --><map id="myMap" show-location /><button type="primary" bindtap="getCenterLocation">获取位置</button><button type="primary" bindtap="moveToLocation">移动位置</button><button type="primary" bindtap="translateMarker">移动标注</button><button type="primary" bindtap="includePoints">缩放视野展示所有经纬度</button>
// map.jsPage({  onReady: function (e) {    // 使用 wx.createMapContext 获取 map 上下文    this.mapCtx = wx.createMapContext('myMap')  },  getCenterLocation: function () {    this.mapCtx.getCenterLocation({      success: function(res){        console.log(res.longitude)        console.log(res.latitude)      }    })  },  moveToLocation: function () {    this.mapCtx.moveToLocation()  },  translateMarker: function() {    this.mapCtx.translateMarker({      markerId: 0,      autoRotate: true,      duration: 1000,      destination: {        latitude:23.10229,        longitude:113.3345211,      },      animationEnd() {        console.log('animation end')      }    })  },  includePoints: function() {    this.mapCtx.includePoints({      padding: [10],      points: [{        latitude:23.10229,        longitude:113.3345211,      }, {        latitude:23.00229,        longitude:113.3345211,      }]    })  }})


>更多相关文章
24小时热门资讯
24小时回复排行
资讯 | QQ | 安全 | 编程 | 数据库 | 系统 | 网络 | 考试 | 站长 | 关于东联 | 安全雇佣 | 搞笑视频大全 | 微信学院 | 视频课程 |
关于我们 | 联系我们 | 广告服务 | 免责申明 | 作品发布 | 网站地图 | 官方微博 | 技术培训
Copyright © 2007 - 2024 Vm888.Com. All Rights Reserved
粤公网安备 44060402001498号 粤ICP备19097316号 请遵循相关法律法规
');})();