微信小程序——地图
一:如何标点问题
地图模块需要用标点:官网API里面的wx.createMapContext(mapId, this)接口,且用官网Demo,小程序运行报错
此时需要在wxml里面给map标签添加属性markers="{{markers}}",且在js里面定义markers对应的id值,才可进行标点;
另外如果想要多点标记的话应采用官网组件里面的map组件,使用map标签添加属性markers="{{markers}}",且在js里面定义markers,还可自定义标点图片等更多内容
https://developers.weixin.qq.com/miniprogram/dev/component/map.html#map
在html里面写地图标签
<map id="myMap" markers="{{markers}}" bindmarkertap="markertap" show-location controls="{{controls}}" longitude="120.19" latitude="30.26" bindregionchange="bindregionchange" bindcontroltap="bindcontroltap"/>
Page({
data: {
showDetail:false,
mapName:'',
mapAddress:'',
markers: [
{
"address": "胜利新村路南",
"createTime": "2018-04-27 14:59:14",
"distance": "0",
"id": 2828,
"latitude": "30.27066",
"longitude": "120.145778",
"name": "胜利新村",
"websiteNo": "1084021603",
"callout":{
content:'胜利胜利新村路南新村路南',
color:'#000000',
bgColor:'#ffffff', //需要6位的色值有效
fontSize:16,
borderRadius: 2,
padding:5,
display: 'BYCLICK'
}
}
],
},
设置marker即可地图上带气泡的标点
更多小程序地图功能,搜索点等
http://lbs.qq.com/qqmap_wx_jssdk/index.html
二:如何定位地图中心点问题
1)想要定位地图中心点,一种是把当前定位设置为地图的中心点,这个官网API有方法
<map id="myMap" markers="{{markers}}" bindmarkertap="markertap" show-location controls="{{controls}}" bindregionchange="bindregionchange" bindcontroltap="bindcontroltap" scale="18" longitude="120.19" latitude="30.26"/>
moveToLocation: function () {
this.mapCtx = wx.createMapContext('myMap');
// 将地图中心移动到当前定位点
this.mapCtx.moveToLocation()
},
初始化执行的时候,在电脑上可以定位到,但是在手机上自动定位到大海上去了,官方论坛找到有网友反馈是接口bug,不知何时修复,所以我在map标签里直接写死了初始化定位的经纬度
当然如果是手动触发点击回到中心按钮的话是没有问题的
2)另一种是想设置固定的经纬度当做中心点,这个方法找了一圈都没有找到,但是别人家的小程序是有这功能的,所以继续探索发现
| getRegion | OBJECT | 获取当前地图的视野范围 |
能搭上一点边,实验了一下成功了,传入一个值时会设置成中心点
三:搜索页想带数据到地图页
返回页面的时候数据传递方法,在传递前将数据设置到上一个页面
var pages = getCurrentPages();
var currPage = pages[pages.length - 1]; //当前页面
var prevPage = pages[pages.length - 2]; //上一个页面
//直接调用上一个页面的setData()方法,把数据存到上一个页面中去
prevPage.setData({
mydata: {a:1, b:2}
})
参考链接:https://www.cnblogs.com/caicaizi/p/6652103.html
微信小程序——地图的更多相关文章
- 微信小程序--地图上添加图片
如何在微信小程序地图添加上,添加图片? 在微信小程序中,地图的层级最高,所以我们没有办法,通过定位,在地图上添加图片等信息; 处理办法: 添加控件:controls; 其中有个属性position,进 ...
- 微信小程序地图开发总结
最近在做一个微信小程序地图插件,通过传入起始位置名称和经纬度信息,就可以跳转到路线规划插件页面中,在该页面中,可以根据起始位置查询自驾,公共交通,步行等方式的路线信息,并且在地图上显示路线信息,在这个 ...
- 微信小程序地图控件篇 ---自定义图标被地图覆盖的问题
今天在做微信小程序的时候遇到这个这样的问题 需要在地图上加个一个自定义的图标控件 类似这样的 刚开始的时候怎图片一直会被地图组件覆盖 ,要怎么解决这个问题 我去翻了下小程序的文档 有个cover ...
- 微信小程序--地图组件与api-模拟器上返回的scale 与真机上不同--bindregionchange触发图标一直闪现问题
场景:根据地理定位获取不同地区的充电桩位置,要求 1.平移的时候,跟随坐标变化展示不同区域的坐标点信息 2.不同的缩放等级,14以下,展示聚合点数据,14以上,展示真正的站点信息: 3.点击聚合点的时 ...
- 微信小程序 地图地址解析
1.微信小程序提供了几个方式,引入地图, wx.getLocation(OBJECT) 获取当前的地理位置.速度.当用户离开小程序后,此接口无法调用:当用户点击“显示在聊天顶部”时,此接口可继续调用 ...
- 百度地图坐标偏移,微信小程序地图偏移问题,腾讯地图坐标偏移
解决方案: 如果用百度的地图获取的坐标点,在微信小程序内使用,就会出现偏移 算法(lat和lng是经纬度,球面坐标): To_B是转到百度,To_G是转到GCJ-02(谷歌,高德,腾讯) var TO ...
- 微信小程序地图模块
微信小程序的地图模块官方提供的API比较少,详情请见 官方文档 以下为一个示例 <!--pages/location/locati ...
- 微信小程序地图总结
小程序官方的 map地图说明文档已经非常详细了,但是鉴于如果没有一个合适的使用场景,对于刚接触 map 的初级开发,看着这些繁杂又贼多的属性名和字段,外加急切的开发需求,晕头转向是不可避免的了.接下来 ...
- 微信小程序地图之逆地理编码
首先说一下,我微信自带map的api中并没有相关接口可调用.文中的方法建立于高德地图.(顺便吐槽,微信开发文档相比支付宝家的显得好烂!) 最近做项目用到地图定位相关的需求,为了搞定需求看了下相关的文档 ...
随机推荐
- 【练习】Python第三次
对函数,内置函数的用法,递归,程序运行顺序的考试 1.列举布尔值为 False 的值 0 False '' [] () {} None 经常使用的场景是 if object 如果object有值就执行 ...
- 区块链之Hyperledger(超级账本)Fabric v1.0 的环境搭建(更新)
参考链接:https://blog.csdn.net/so5418418/article/details/78355868 https://blog.csdn.net/wgh1015398431/ ...
- 元组拆包 与 python拆包
一.元组拆包(元组解包.迭代解包) 元组拆包可以应用到任何可迭代对象上(任何迭代对象),被可迭代对象中的元素数量必须要跟接受这些元素的元组的空档数一致.也可以使用用 * 来表示忽略多余的元素. 一般的 ...
- python之列表及其方法---整理集
列表类,类名是list 通过list类创建对象,使用中括号 列表特性: 使用中括号括起来 中间用逗号分隔每个元素 元素可以是数字.字符串.布尔值.列表 列表中可以嵌套列表 列表中每个元素的下标从0开始 ...
- 远程过程调用(RPC)
在第二篇教程中我们介绍了如何使用工作队列(work queue)在多个工作者(woker)中间分发耗时的任务. 可是如果我们需要将一个函数运行在远程计算机上并且等待从那儿获取结果时,该怎么办呢?这就是 ...
- 基于Eureka的服务治理
代码地址如下:http://www.demodashi.com/demo/11927.html 一.服务的注册与发现 关系调用说明: 服务生产者启动时,向服务注册中心注册自己提供的服务 服务消费者启动 ...
- Opencv-Python学习笔记(二)
2. 使用OpenCV3处理图像 2.1 不同色彩空间的转换 OpenCV中有数百种关于在不同色彩空间之间转换的方法. 三种常用色彩空间:灰度.BGR.HSV(Hue色调,Saturation饱和度, ...
- 通信导论-IP数据网络基础(4)
IP地址的编址方法--IP地址+掩码地址=网络地址 分类的IP地址 每一类地址都由两个固定长度的字段组成,其中一个字段是网络号 net-id,标志主机或路由器所连接到的网络,另一个字段则是主机号 ho ...
- linux 网络管理的三种方式
修改网络IP的三种方式 1.修改配置文件 1.1dhcp自动获取 配置文件地址/etc/sysconfig/network-scripts TYPE=Ethernet #类型=以太网 PROXY_M ...
- Asp.net core 向Consul 注册服务
Consul服务发现的使用方法:1. 在每台电脑上都以Client Mode的方式运行一个Consul代理, 这个代理只负责与Consul Cluster高效地交换最新注册信息(不参与Leader的选 ...