微信小程序 map 地图组件实战案例

发布时间:2026/10/30 6:46:14

微信小程序 map 地图组件实战案例 一、前言微信小程序自带map地图组件可以快速在页面渲染腾讯地图支持标记点 marker、弹窗、选点、定位、导航等功能。 本次为课程作业案例在地图上展示三个标记点位我的位置、黑龙江东方学院南门、第一学生公寓附带两个按钮功能选择位置调用wx.chooseLocation在地图拾取新位置并更新地图中心点打开位置调用wx.getLocation获取当前定位唤起地图导航页面本项目为原生微信小程序无第三方框架直接在微信开发者工具导入即可运行。二、项目文件结构pages/ └── index/ ├── index.js ├── index.wxml ├── index.wxss images/ ├── loc01.png └── loc02.png app.json app.wxss说明loc01.png、loc02.png为自定义标记图标放到 images 目录下。三、代码实现1. app.json 配置权限、页面注册{ pages: [ pages/index/index ], window: { backgroundTextStyle: light, navigationBarBackgroundColor: #fff, navigationBarTitleText: map组件, navigationBarTextStyle: black }, permission: { scope.userLocation: { desc: 用于地图定位与导航 } }, requiredPrivateInfos: [getLocation, chooseLocation] }2. index.wxml 页面结构!--index.wxml-- view classbox view classtitle地图组件应用示例/view map longitude{{longitude}} latitude{{latitude}} markers{{markers}} show-location/map view classbtnLayout button bindtapchooseLocation typeprimary选择位置/button button bindtapopenLocation typeprimary打开位置/button /view /view3. index.wxss 页面样式/**index.wxss**/ page { height: 100vh; display: flex; flex-direction: column; } .scrollarea { flex: 1; overflow-y: hidden; } map { margin: 20rpx 0; width: 100%; height: 700rpx; } .btnLayout { display: flex; flex-direction: row; justify-content: space-evenly; }4. app.wxss 全局样式/**app.wxss**/ .box { margin: 20rpx; padding: 20rpx; border: 2rpx solid purple; } .title { font-size: 40rpx; font-weight: bolder; text-align: center; margin-bottom: 30rpx; color: #ff7d00; }5. index.js 业务逻辑核心3 个 marker 标记点// index.js Page({ data: { longitude: 126.660821, // 地图默认中心点经度 latitude: 45.572903, // 地图默认中心点纬度 markers: [{ id: 1, longitude: 126.660821, latitude: 45.572903, iconPath: /images/loc01.png, width: 28, height: 28, label: { content: 我的位置, color: #0000ff, bgColor: #ffff00, fontSize: 20 } }, { id: 2, longitude: 126.659702, latitude: 45.57112, iconPath: /images/loc02.png, width: 32, height: 32, label: { content: 黑龙江东方学院南门, color: #ffff00, bgColor: #ff00ff, fontSize: 20 } }, { id: 3, longitude: 126.662200, latitude: 45.574100, iconPath: /images/loc01.png, width: 28, height: 28, label: { content: 第一学生公寓, color: #ffffff, bgColor: #0000ff, fontSize: 20 } }] }, // 选择位置拾取地图位置更新地图中心 chooseLocation() { wx.chooseLocation({ success: (res) { console.log(res); this.setData({ longitude: res.longitude, latitude: res.latitude }) } }) }, // 获取定位打开地图导航页面 openLocation() { wx.getLocation({ type: gcj02, success: (res) { wx.openLocation({ latitude: res.latitude, longitude: res.longitude, }) } }) } })四、功能说明markers 标记点一共 3 个点位每个标记可以自定义图标、文字标签、文字颜色、背景色chooseLocation 选择位置打开地图选点器选中地点后自动移动地图中心到该位置openLocation 打开位置获取当前 GPS 定位唤起腾讯地图内置导航页面show-location地图上展示蓝色小圆点代表用户当前位置坐标系使用gcj02为腾讯地图、高德地图通用国测局坐标系。五、运行注意事项踩坑记录权限必填requiredPrivateInfos必须声明getLocation、chooseLocation否则真机调用失败开发工具勾选【地理位置】模拟权限真机调试需要开启手机定位图片路径iconPath 路径不能写错图片放在 images 文件夹经度纬度不要混用 WGS84GPS 原始坐标小程序 map 组件要求 gcj02新版本小程序定位相关接口有调整上线需要审核定位用途。六、作业拓展思路给 marker 添加点击事件点击标记点弹出提示框增加路线规划增加缩放控件、比例尺控件动态新增标记点。七、小结微信小程序 map 组件开发门槛低适合校园位置展示、门店点位、打卡地图等场景。本案例为课程标准作业满足「三个标记点 选点 导航」需求代码可以直接提交作业也可以在此基础上继续拓展。
延伸阅读

更多相关文章

2026/10/30 6:46:14

电表上的数值,网关怎么读上来:Modbus 是啥

配电房里的那块电表,数字一直在跳。上位机或边缘网关上却能稳住刷出电压、电流、功率。中间传数的,往往不是什么「厂家私有黑科技」,而是工业界用了四十多年的普通话——Modbus。 它不负责漂亮的 App 界面,也不管云平台怎么计费。…

2026/10/30 6:46:14

02|DeepSeek Harness 插件开发:给设置窗口加一个页面

1. 先做一个能打开、能点击的插件 给 DeepSeek Harness(简称 dsh)增加一个设置页,最直接的想法是找到导航栏,插入一个按钮,再把自己的 HTML 塞进内容区。 这样可能暂时能显示,但切换设置页、关闭窗口或者刷新后,还得自己处理选中状态、内容显示和重复插入。页面本来由…

2026/10/30 8:01:19

剑网3智能宏教程:全职业一键输出,PVE宏脚本与Lua自动化方案

剑网3智能宏教程:全职业一键输出,PVE宏脚本与Lua自动化方案 【免费下载链接】JX3Toy 全功能减负工具 项目地址: https://gitcode.com/GitHub_Trending/jx/JX3Toy 剑网3的技能循环从来不简单:读条、CD、奇穴条件、目标切换全压在你手指…

2026/10/30 8:01:19

Java算法核心体系与实战优化技巧

1. Java算法核心体系概述作为从业十余年的Java开发者,我深刻体会到算法能力是区分普通程序员与技术专家的分水岭。Java算法体系包含数据结构基础、经典算法实现、性能优化策略三大支柱,这不仅是面试通关的必备技能,更是解决复杂工程问题的利器…

2026/10/30 8:01:19

基于AI智能体的Office自动化:毕设项目架构与实操全解析

1. 项目缘起与整体架构设计1.1 为什么选择“AI智能体 Office套件”这个方向计算机科学与技术专业的毕设选题,每年都有一大批人扎堆做管理系统、推荐算法、图像识别。不是说这些方向不好,而是做得太多了,答辩老师一看标题就能猜到你要讲什么。…

2026/10/29 17:05:52

全国计算机二级C语言真题PDF高效刷题指南

简介:这份PDF是全国计算机二级C语言考试的试题与答案解析,专为备考二级C语言的考生准备。内容涵盖C语言特点与设计理念、程序基本组成单位、main函数执行流程、函数嵌套调用规则、标识符命名规范、整型实型字符型数据类型、八进制十六进制数合法形式、运…

2026/10/29 17:06:02

requests+BeautifulSoup:爬虫抓取h1标题的入门实战指南

简介:一份以实战为导向的Python爬虫入门资源,面向具备基本编程基础、希望快速掌握网络数据抓取的初学者,可解决从零编写简单爬虫的常见困惑。实例以requests库发送HTTP请求、BeautifulSoup解析HTML文档,完整演示从网页中提取 标题…

2026/10/29 17:06:13

递推最小二乘参数辨识MATLAB编程:二阶系统与渐消记忆实现

简介:这是一篇面向控制系统、信号处理与机器学习等领域学习者的最小二乘参数辨识程序说明文档。资源共包含一个docx格式文档,压缩包大小七十八KB,内容围绕递推最小二乘算法和渐消记忆最小二乘算法展开:先构造一个极点位于单位圆内…

2026/10/30 0:00:46

NCP1342高频准谐振反激控制器:从设计约束到验收的完整方案

简介:NCP1342 高频准谐振反激控制器应用介绍译文文档,面向电源设计工程师、硬件研发人员及开关电源学习者,帮助读者跨越英文原版资料的语言门槛,系统理解这款高集成度 QR Flyback 控制器的设计要点。文档围绕芯片核心特性展开&…

2026/10/30 0:00:46

NCP1342准谐振反激电源设计:从选型到验收的全流程解析

简介:这份文档面向电源设计工程师与开关电源学习者,系统梳理NCP1342高频准谐振反激控制器的应用要点,帮助读者快速理解这款高集成度离线电源变换器控制芯片的工作机制与设计方法。内容涵盖芯片核心特性、引脚功能定义、电气特性参数表、最大额…

2026/10/30 0:00:46

Web系统自动登出机制设计与实现全解析

1. 系统自动登出机制的设计初衷在各类Web应用和后台管理系统中,自动登出功能早已成为标配。这个看似简单的功能背后,实际上涉及用户安全、资源管理和体验优化的多重考量。作为从业十多年的老开发,我见过太多因为登出逻辑设计不当导致的安全事…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑