演示效果如下:

资源如下

marker,png

index.wxml

 <view class="map-container">
<map id="map" longitude="{{myLongitude}}" latitude="{{myLatitude}}" scale="18" bindcontroltap="controltap" markers="{{markers}}" controls="{{controls}}" bindmarkertap="markertap" bindregionchange="regionchange" show-location>
<cover-view>
{{text}}
</cover-view>
</map>
</view>

index.wxss

 .map-container {
position: absolute;
top:;
bottom:;
left:;
right:;
} map {
width: 100%;
height: 100%;
} cover-image {
width: 30rpx;
height: 30rpx;
} cover-view {
padding: 2%;
text-align: center;
color: #fff;
background-color: #09bb07;
}

index.js

 let QQMapWX = require('qqmap-wx-jssdk.min');
let qqmapsdk;

Page({ /**
* 页面的初始数据
*/
data: {
myLatitude: 0.0,
myLongitude: 0.0
}, /**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
let page = this /**
* 实例化API核心类(详情见申请key):http://lbs.qq.com/console/mykey.html
*/
qqmapsdk = new QQMapWX({
/**
*
*
* 严重注意!!!!要申请key以及导入qqmap-wx-jssdk.js,具体见上面的网址
*
*
*/ key: '' //XXXX-XXXX-XXXX-XXXX
}); /**
* 调用内部获取位置,默认为wsg84,精确为gcj02
*/
wx.getLocation({
type: 'gcj02',
success: function(res) {
console.log(res.latitude, res.longitude);
page.setData({
myLatitude: res.latitude,
myLongitude: res.longitude
});
}
})
}, /**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function() {
this.getLngLat()
}, /**
* 获取中间点的经纬度,并mark出来
*/
getLngLat() {
let page = this;
page.mapCtx = wx.createMapContext("map");
page.mapCtx.getCenterLocation({
success: function(res) {
page.setData({
markers: [{
id: 0,
iconPath: "marker.png",
longitude: res.longitude,
latitude: res.latitude,
width: 30,
height: 30
}]
})
page.getPoiList(res.longitude, res.latitude)
}
})
}, /**
* 视野发生变化时触发:见页面bindregionchange事件
*/
regionchange(e) {
e.type == 'end' ? this.getLngLat() : this.getLngLat()
}, /**
* 详情见官方API配置:http://lbs.qq.com/qqmap_wx_jssdk/method-reverseGeocoder.html
*/
getPoiList(longitude, latitude) {
let page = this
qqmapsdk.reverseGeocoder({
location: {
latitude: latitude,
longitude: longitude,
},
get_poi: 1,
poi_options: 'policy=2;radius=3000;page_size=2;page_index=1',
success: function(res) {
/**
* 详细数据从这儿拿....
*/
page.setData({
text: res.result.pois[0].title
});
},
fail: function(res) {
console.log(res);
},
complete: function(res) { }
});
}
})

微信小程序 - 滑动显示地点信息(map)的更多相关文章

  1. [微信小程序] 微信小程序获取用户定位信息并加载对应城市信息,wx.getLocation,腾讯地图小程序api,微信小程序经纬度逆解析地理信息

    因为需要在小程序加个定位并加载对应城市信息 然而小程序自带api目前只能获取经纬度不能逆解析,虽然自己解析方式,但是同时也要调用地图,难道用户每次进小程序还要强行打开地图选择地址才定位吗?多麻烦也不利 ...

  2. 微信小程序实现显示和隐藏控件-头像-取值-bindblur事件

    微信小程序实现显示和隐藏控件 .wxml: <view class=" {{showOrHidden?'show':'hidden'}}"></view> ...

  3. 微信小程序滑动选择器

    实现微信小程序滑动选择效果 在wxml文件中,用一个picker标签代表选择器,bindchange是用户点击确定后触发的函数,index是picker自带的参数,用户点击确定后,bindchange ...

  4. 微信小程序中显示html富文本的方法

    微信小程序中显示html富文本的方法 使用方法:git地址:https://github.com/icindy/wxParse 一.下载wxParse文件 二.在要引入的页面的js文件中,引入文件 j ...

  5. 微信小程序的应用及信息整合,都放到这里了

    微信小程序终于开始公测了,这篇文章也终于可以发布了. 这篇文章可以说是微信小程序系列三部曲最后一篇.8 月份,小程序推出前,我写了<别开发 app 了>详细阐述了为什么创业应该放弃原生 a ...

  6. 微信小程序之----获取设备信息

    1. 获取系统信息        wx.getSystemInfo(OBJECT)        wx.getSystemInfoSync() 同步获取系统信息                回调常用 ...

  7. 微信小程序tabBar显示问题

    在微信小程序的开发中,我遇到疑惑如下: 在app.json中定义了多个pages,一般微信小程序启动的时候,自动加载pages下的第一个页面, "pages": [        ...

  8. 微信小程序 键盘显示短信验证码

    1.场景描述: IOS系统 一些APP或者微信小程序在收到短信验证码的时候会在键盘上自动保存验证码信息,当用户点击的时候,会自动赋值到当前所点击的输入框中 2.案例: 2.实现: TIPS:这个功能是 ...

  9. [重要更新]微信小程序登录、用户信息相关接口调整:使用 wx.getUserProfile 取代 wx.getUserInfo

    2021年2月24日,微信官方团队发布了一个调整通知:<小程序登录.用户信息相关接口调整说明>,公告明确从4月13日起,所有发布的小程序将无法使用 wx.getUserInfo 接口(JS ...

随机推荐

  1. js面向对象编程(二)构造函数的继承(转载)

    Javascript面向对象编程(二):构造函数的继承 这个系列的第一部分,主要介绍了如何"封装"数据和方法,以及如何从原型对象生成实例. 今天要介绍的是,对象之间的"继 ...

  2. javascript中判断变量时变量值为 0 的特殊情况

    有时候我们在js中会直接判断变量是否存在值,下面列举一些情况: var a = 0; var b = 1; var c = ' '; var d; console.log( a ? 1 : null) ...

  3. THULAC:一个高效的中文词法分析工具包(z'z)

    网址:http://thulac.thunlp.org/ THULAC(THU Lexical Analyzer for Chinese)由清华大学自然语言处理与社会人文计算实验室研制推出的一套中文词 ...

  4. Android 曲线动画animation,类似加入购物车动画

    按照惯例先放效果图:图中小球做抛物线运动 资源图片 1.首先布局文件activity_main.xml,布局很简单,就一个测试按钮 <RelativeLayout xmlns:android=& ...

  5. java classloader怎么找class?

    通过ClassPath http://www.cnblogs.com/xwdreamer/archive/2010/09/08/2297098.html 在eclipse里通过add jar add ...

  6. PHP常用到的功能函数

    1.PHP加密解密 PHP加密和解密函数可以用来加密一些有用的字符串存放在数据库里,并且通过可逆解密字符串,该函数使用了base64和MD5加密和解密. 复制代码代码如下: function encr ...

  7. (2)Python 变量和运算符

    一.python变量特点 python是弱类型语言,无需声明变量可以直接使用并且变量的数据类型可以动态改变 二.变量命名规则 1.不能使用python关键字 2.不能数字开头 3.不能包含空格 4.不 ...

  8. 认识createDocumentFragment

    今天在看vue源码解析时候发现一个api没有见过,一查是原生的,赶紧补漏. DocumentFragments 是DOM节点.它们不是主DOM树的一部分.通常的用例是创建文档片段,将元素附加到文档片段 ...

  9. 训练指南 UVALive - 3989(稳定婚姻问题)

    ayout: post title: 训练指南 UVALive - 3989(稳定婚姻问题) author: "luowentaoaa" catalog: true mathjax ...

  10. Scrum之成败——从自身案例说起,仅供参考

    从07年中初次接触Scrum的概念到其中几年项目中逐渐实践CI.TDD,到亲自掌握项目实践Scrum近一年,最终我们放弃了Scrum这个框架和所谓的“自组织”.原因为何? 1.成员放弃了Scrum所“ ...