小程序地图开发周边信息POI展示为列表
##首先附上效果图
在我前面的文章中我详述过如何使用百度地图API来开发小程序的地图,所以这里面就不说基础内容了。
直说如下:
##1.如何获取列表:
//分类存储
makertap: function(e) {
var that = this;
var id = e.markerId;
that.showSearchInfo(wxMarkerData, id);
},
onLoad: function() {
var that = this;
//初始化的时候渲染wxSearchdata
WxSearch.init(that, 400, ['家政', '药店', '公厕', '银行', '营业厅', '医院', '超市', '地铁站', '停车场', '维修', '美食', '饭店']);
WxSearch.initMindKeys(['家政公司', '保洁公司', '大药房', '药店', '免费公厕', '营业厅', '银行ATM', '三甲医院', '地下停车场', '地铁口', '汽车美容', '饭店', '美食广场', '中石化加油站', '中石油加油站']);
// 新建百度地图对象
var BMap = new bmap.BMapWX({
ak: 'jXYZ2cjB0lwQYiI8einLVGGEv7Q0zfDz'
});
var fail = function(data) {
console.log(data)
};
var success = function(data) {
wxMarkerData = data.wxMarkerData;
that.setData({
markers: wxMarkerData
});
that.setData({
latitude: wxMarkerData[0].latitude
});
that.setData({
longitude: wxMarkerData[0].longitude
})
that.setData({
dataArray: data.wxMarkerData
})
};
// 发起POI检索请求
BMap.search({
"query": "",
fail: fail,
success: success,
// 此处需要在相应路径放置图片文件
iconPath: '../../images/marker_red.png',
// 此处需要在相应路径放置图片文件
iconTapPath: '../../images/marker_red.png'
});
},
在onload中加载对地图的请求,并将数据存储起来,这里面请求到的数据是数组形式可以直观的展示出来的。
我们就用一个数组来存储。
在公共data中存储一个dataArray,在onload加载请求成功后存储一个dataArray
this.setData({
dataArray: data.wxMarkerData
})
同样的我们在搜索函数中也要存储上,具体是在哪个函数呢?
看下面
//点击事件
wxSearchFn: function(e) {
var that = this;
total = 0;
code = e.currentTarget.dataset.code + "";
var name = e.currentTarget.dataset.text + "";
this.data.dataArray = [];
//显示选择结果
this.setData({
title: "周边信息: " + name
})
WxSearch.wxSearchAddHisKey(that);
// 新建百度地图对象
var BMap = new bmap.BMapWX({
ak: 'jXYZ2cjB0lwQYiI8einLVGGEv7Q0zfDz'
});
var fail = function(data) {
console.log(data)
};
var success = function(data) {
wxMarkerData = data.wxMarkerData;
console.log("++++++++", data)
that.setData({
markers: wxMarkerData
});
that.setData({
latitude: wxMarkerData[0].latitude
});
that.setData({
longitude: wxMarkerData[0].longitude
})
that.setData({
dataArray: data.wxMarkerData
})
};
// 发起POI检索请求
console.log("当前点击", name)
BMap.search({
query: name,
fail: fail,
success: success,
// 此处需要在相应路径放置图片文件
iconPath: '../../images/marker_red.png',
// 此处需要在相应路径放置图片文件
iconTapPath: '../../images/marker_red.png'
});
},
以及对应的前端页面展示。这里onlaod中展示的是默认加载出来的列表。 wxSearchFn是我们点击上面的分类进行搜索展示对应分类信息列表。
##2.前端页面展示
用一个wx:for来循环整个列表,然后获取对应数据内容,展示你想展示的id进行排序,其他字段根据个人需求来展示。
<block wx:for="{{dataArray}}" wx:for-item="item" wx:key="">
<view class='dataArray'>
<text>{{item.id+1}}:{{item.title}}</text>
</view>
<view class='dataArray'>
<text>位置:{{item.address}}</text>
</view>
</block>
小程序地图开发周边信息POI展示为列表的更多相关文章
- 微信小程序地图开发总结
最近在做一个微信小程序地图插件,通过传入起始位置名称和经纬度信息,就可以跳转到路线规划插件页面中,在该页面中,可以根据起始位置查询自驾,公共交通,步行等方式的路线信息,并且在地图上显示路线信息,在这个 ...
- [微信小程序] 微信小程序获取用户定位信息并加载对应城市信息,wx.getLocation,腾讯地图小程序api,微信小程序经纬度逆解析地理信息
因为需要在小程序加个定位并加载对应城市信息 然而小程序自带api目前只能获取经纬度不能逆解析,虽然自己解析方式,但是同时也要调用地图,难道用户每次进小程序还要强行打开地图选择地址才定位吗?多麻烦也不利 ...
- 微信小程序快速开发
微信小程序快速开发 一.注册小程序账号,下载IDE 1.官网注册https://mp.weixin.qq.com/,并下载IDE. 2.官方文档一向都是最好的学习资料. 注意:1)注册账号之后会有一个 ...
- 基于微信小程序云开发实现的婚礼邀请函模板,可自行定制开发
这个婚礼邀请函是之前帮别人做的,现在人家婚礼举办过了也没啥关系了,想着就修改成通用模板进行开源,方便大家尤其是小白们克隆项目之后稍微修改就能够直接使用. 当时自己开始这个项目时候也是查阅了很多教程文章 ...
- mpvue+小程序云开发,纯前端实现婚礼邀请函
请勿使用本文章及源码作为商业用途! 前言 当初做这个小程序是为了婚礼前的需要,结婚之后,希望这个小程序能够留存下来,特地花了一些空闲时间将小程序转化成为“相册类小程序” 体验码 准备工作 mpvue框 ...
- mpvue+小程序云开发,纯前端实现婚礼邀请函(相册小程序)
请勿使用本文章及源码作为商业用途! 前言 当初做这个小程序是为了婚礼前的需要,结婚之后,希望这个小程序能够留存下来,特地花了一些空闲时间将小程序转化成为“相册类小程序” 体验码 准备工作 mpvue框 ...
- 前端微信小程序云开发基础讲解
什么是云开发 云开发与传统模式的对比 云开发能力介绍云开发对小程序开发的变革 云开发是微信团队联合腾讯云提供的原生serverless云服务,致力于帮助更多的开发者快速实现小程序业务的开发,快速迭代. ...
- 微信小程序快速开发上手
微信小程序快速开发上手 介绍: 从实战开发角度,完整系统地介绍了小程序的开发环境.小程序的结构.小程序的组件与小程序的API,并提供了多个开发实例帮助读者快速掌握小程序的开发技能,并能自己动手开发出小 ...
- 微信小程序实战--开发一个简单的快递单号查询
功能如图: 虽然工作中只负责小程序后台开发,但是还是小程序开发产生了浓厚的兴趣,官方文档也是超级详细了 这里就简单做一个快递单号的查询: 新建一个page: 接着就可以写wxml了.这里用一个简单的i ...
随机推荐
- PL-USB2-BLASTER 使用说明
PL-USB2-BLASTER 使用说明 PL-USB2-BLASTER就是USB BLATER II烧录器.官方文档在https://www.intel.com/content/dam/www/pr ...
- js 表格操作----添加删除
js 表格操作----添加删除 书名:<input type="text" id="name"> 价格:<input type="t ...
- vbs操作IE对象
Dim fso,filepath,i 'Dim ExcelBook,ExcelSheet,MyExcelBook,MyExcelSheet Dim ie Set ie=WScript.CreateOb ...
- 学术Essay写作简单且稳定的架构解析
学术essay写作(academic writing),无论是论文还是专著,间架要稳固,才有可读性,才有说服力. 稳,有几个应然特征:部块(parts)关联紧密:部块不外生枝叶:部块之间没有杂质干扰. ...
- 小陈WEB漏洞扫描器 V2.0
小陈WEB漏洞扫描器 V2.0 小陈WEB漏洞扫描器 V2.0 https://pan.baidu.com/s/1NSmFCyxowEa3YlOuhvtwwQ
- INI文件,WritePrivateProfileString()和GetPrivateProfileString()函数----转载
INI文件就是扩展名为“ini”的文件.在Windows系统中,INI文件是很多,最重要的就是“System.ini”.“System32.ini”和“Win.ini”.该文件主要存放用户所做的选择以 ...
- HDU 5524:Subtrees
Subtrees Accepts: 60 Submissions: 170 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 13107 ...
- oracle jobs查看 sql及创建 jobs
1.查看所有的 jobs select t.* from user_jobs t 2.创建 jobs declare job_id pls_integer; begin sys.dbms_job. ...
- LCS(Longest Common Subsequence)最长公共子序列
最长公共子序列(LCS)是一个在一个序列集合中(通常为两个序列)用来查找所有序列中最长子序列的问题.这与查找最长公共子串的问题不同的地方是:子序列不需要在原序列中占用连续的位置 .最长公共子序列问题是 ...
- Day3-I-Squares POJ2002
A square is a 4-sided polygon whose sides have equal length and adjacent sides form 90-degree angl ...