目录

  • 效果图
  • API获取
  • 微信小程序后台配置
  • 代码
    • app.json
    • wxml代码
    • wxss代码
    • JS代码
  • 二次开发
  • 留言

效果图

API获取

本项目使用的是腾讯位置服务提供的api,点击链接注册或登录控制台。
在控制台页面点击key管理并创建新密钥

输入你的信息,点击提交

申请完成后,在key管理页面点击刚刚申请完成的key配置

在启用产品中勾选微信小程序并填写APP IDWebserviceAPI,点击保存

这样API就申请成功了

微信小程序后台配置

在小程序后台的开放设置中添加服务器域名https://apis.map.qq.com

在小程序后台的设置中的第三方设置点击添加插件,搜索腾讯位置服务路线规划,点击添加

代码

app.json

打开app.json添加红框的两处代码

我的app.json

{"pages": ["pages/test2/test2"],"permission": {"scope.userLocation": {"desc": "用户根据您的位置来提供对应的周边信息"}},"window": {"backgroundTextStyle": "light","navigationBarBackgroundColor": "#fff","navigationBarTitleText": "WeChat","navigationBarTextStyle": "black"},"plugins": {"routePlan": {"version": "1.0.5","provider": "wx50b5593e81dd937a"}},"style": "v2","sitemapLocation": "sitemap.json"
}

wxml代码

<map latitude="{{latitude}}" longitude="{{longitude}}" markers="{{markers}}" scale="14" bindmarkertap="markertap" show-location></map>
<view style="info"><view class="title">{{address[index].title}}</view><view class="address">{{address[index].address}}</view><view class="nav" bindtap="nav"><image mode="widthFix" src="https://codermoyv.gitee.io/coder-moyv/assets/images/wechat/e_life_helper/icon_nav.png"></image></view>
</view>

wxss代码

map{width: 100%;height: 85vh;
}
info{height: 15vh;padding: 32rpx;background-color: white;
}
.title{font-weight: bold;font-size: 40rpx;margin: 32rpx;
}
.address{font-size: 24rpx;margin: 32rpx;
}
.nav{position: absolute;right: 32rpx;bottom: 32rpx;
}
.nav image{width: 120rpx;
}

JS代码

Page({/*** 页面的初始数据*/data: {index:0},/*** 生命周期函数--监听页面加载*/onLoad: function(options) {let that = thiswx.getLocation({type: 'gcj02',success: function(res) {var latitude = res.latitudevar longitude = res.longitudethat.setData({latitude: latitude,longitude: longitude})wx.request({url: 'https://apis.map.qq.com/ws/place/v1/search?key=你申请的key&keyword=加油站&boundary=nearby(' + latitude + ',' + longitude + ',1000)&page_size=20',success: function(res) {var markers = [] //地图markers标记点var address = [] //地址数据var arr = res.data.datafor (var i = 0; i < arr.length; i++) {markers.push({iconPath: "https://codermoyv.gitee.io/coder-moyv/assets/images/wechat/e_life_helper/icon_oli.png",id: i,latitude: arr[i].location.lat,longitude: arr[i].location.lng,width: 32,height: 32})address.push({title: arr[i].title,address: arr[i].address})}markers[0].iconPath ="https://codermoyv.gitee.io/coder-moyv/assets/images/wechat/e_life_helper/icon_oli_active.png"//将第一位设置为选中that.setData({markers: markers,address: address})}})},})},/*** markers点击事件*/markertap:function(e){var id = e.detail.markerIdvar markers = this.data.markersfor (var i = 0; i < markers.length; i++) {if (markers[i].id == id) {markers[i].iconPath = "https://codermoyv.gitee.io/coder-moyv/assets/images/wechat/e_life_helper/icon_oli_active.png"} else {markers[i].iconPath = "https://codermoyv.gitee.io/coder-moyv/assets/images/wechat/e_life_helper/icon_oli.png"}}this.setData({markers: markers,index: id})},/*** 导航按钮*/nav: function (e) {let plugin = requirePlugin('routePlan');let key = '';  //使用在腾讯位置服务申请的keylet referer = '';   //调用插件的app的名称let endPoint = JSON.stringify({  //终点'name': this.data.address[this.data.index].title,'latitude': this.data.markers[this.data.index].latitude,'longitude': this.data.markers[this.data.index].longitude});wx.navigateTo({url: 'plugin://routePlan/index?key=' + key + '&referer=' + referer + '&endPoint=' + endPoint});}
})

二次开发

将JS代码中 wx.requesturlhttps://apis.map.qq.com/ws/place/v1/search?key=你申请的key&keyword=加油站&boundary=nearby(' + latitude + ',' + longitude + ',1000)&page_size=20中的keyword改为您想获取的周边,例如医院,停车场,超市……等等,然后修改markers的图标即可,图标可在iconfont查找并下载。

留言

如果有什么不懂或者有BUG,请在评论区留言或者加我qq1354760865,我会在第一时间回复!!!


目前正在学习前端,微信小程序…欢迎关注,一起学习!!!
欢迎访问我的小程序

微信小程序实现附近加油站和地图路线导航功能相关推荐

  1. 微信小程序开发:腾讯地图集成详细步骤

    前言 在腾讯生态开发过程中,包括在微信小程序开发的时候,避免不了使用腾讯送的腾讯大礼包,从微信支付到腾讯地图,一条龙的腾讯大礼包,不得不说鹅厂的实力是无可比拟的.但是话又说回来了,鹅厂的官方 API ...

  2. 微信小程序开发:腾讯地图集成步骤(旧题新说)

    在腾讯生态开发过程中,包括在微信小程序开发的时候,避免不了使用腾讯送的腾讯大礼包,从微信支付到腾讯地图,一条龙的腾讯大礼包,不得不说鹅厂的实力是无可比拟的. 但是话又说回来了,鹅厂的官方API真是不敢 ...

  3. 腾讯小程序php,微信小程序实现使用腾讯地图SDK步骤详细介绍

    这篇文章微信小程序实现使用腾讯地图SDK步骤详细介绍的相关资料,需要的朋友可以参考下 微信小程序 使用腾讯地图SDK详解及实现步骤 近期在做一款彩票服务类项目中用到了腾讯地图提供的小程序解决方案,拿来 ...

  4. 微信小程序使用腾讯位置服务地图选点实现地址的选取|微信小程序腾讯位置服务地图选点请求来源未被授权

    效果图 首先要在微信开放平台的小程序里 添加插件 具体配置,可以参考官方文档 腾讯位置服务地图选点 | 小程序插件 | 微信公众平台 (qq.com) 同时还要申请接口的权限,不然小程序上线的时候不能 ...

  5. api 定位 微信小程序 精度_微信小程序城市定位(借助百度地图API判断城市)

    概述 微信小程序提供一些API(地址)用于获取当前用户的地理位置等信息,但无论是wx.getLocation,还是wx.chooseLocation均没有单独的字段表示国家与城市信息,仅有经纬度信息. ...

  6. 基于微信小程序Map标签及高德地图开源方法实现路径导航

    微信小程序自带地图map标签,他是基于canvas画图功能进行的地图渲染,同时依赖微信的getlocation获取经纬度,绘制周边地图.地图上可以标点,画线,查看当地地理信息.但是自带的导航功能模块不 ...

  7. 微信小程序手把手接入腾讯地图

    正经学徒,佛系记录,不搞事情 一.理解腾讯地图于小程序的作用 要想在小程序上使用腾讯地图,就要先去理解腾讯地图是在做什么 map 地图.该组件是原生组件,使用时请注意相关限制. 个性化地图能力可在小程 ...

  8. 【微信小程序+echarts点亮中国地图】微信小程序echarts中国地图点亮功能

    0 小程序开发背景 1 下载官方Github项目 2 按照Echarts官网的map示例使用 3 点击事件的函数 效果图 0 小程序开发背景 前段时间在上学校的软件开发与实践B课程 因为赶上了工大百年 ...

  9. 微信小程序如何调用腾讯地图进行定位的简单方法

    前言: 这是博主自己目前使用的方式,比较方便,直接调用,没有任何花里胡哨的操作,简约 简单,基于官方文档的说明可以很清楚的知道如何调用腾讯地图的api 具体操作如下 : 先在腾讯地图开放文档中获取到官 ...

最新文章

  1. [置顶] Android代码----android获取3G或wifi流量信息
  2. python测试框架untest怎么循环执行_Python自动化测试-Unittest单元测试框架详解
  3. silverlight旋转中心很好玩
  4. 浮点数的二进制表示学习笔记
  5. 用注水实验法验证勾股定理
  6. 容器环境自建数据库、中间件一键接入阿里云 Prometheus 监控
  7. AdGuard广告拦截插件V3.6.6
  8. Java并发编程-ReadWriteLock读写锁
  9. SAP License:SAP 移动类型详解
  10. Linux入门相关基础知识
  11. 电工模拟接线软件 app_老电工教你家装线路接线
  12. 米思齐(Mixly)图形化系列教程(一)-Mixly软件安装及界面功能介绍
  13. 中国电信物联网平台入门学习笔记2: DOME程序分析
  14. 使用Horner法则计算多项式的值
  15. 什么是 “use strict”; ? 使用它的好处和坏处分别是什么?
  16. QT——Qt QtCreator 官方下载地址
  17. 计算机辅助设计绘图员技能鉴定试题(建筑类),计算机辅助设计高级绘图员技能鉴定试题...
  18. 移动二班 21号 pycharm 04.09
  19. 使用Vue表单时输入框无法输入文字
  20. 小白也能动手搭建属于自己的博客网站

热门文章

  1. acm1905Pseudoprime numbers
  2. Cisco IOS XRv 9000 Router Release 7.5.1 ED 下载
  3. linux 目录下创建子目录,在 Linux 下用 mkdir 命令来创建目录和子目录
  4. 《Dreamweaver CS6 完全自学教程》笔记 第十二章:框架的应用
  5. java perl 正则表达式_来自Perl类型正则表达式的Java正则表达式
  6. ​我在爱奇艺平台做影视剪辑,2021上半年日入100+方法!【覃小龙课堂】
  7. 求俄罗斯套娃信封问题——C++
  8. 大数据(起源及特点,hadoop的配置安装)
  9. RDIFramework.NET敏捷开发框架 ━ 工作流程组件介绍
  10. 太平洋直购传销被查处