news 2026/11/4 7:09:39

微信小程序 练习:map组件

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
微信小程序 练习:map组件

一、案例描述

设计一个小程序,演示 map 组件、wx.getLocation、wx.chooseLocation 和 wx.openLocation 的功能和使用方法。小程序运行后可以显示给定经纬度的地图和一些地图标识,还可以实现选择位置和打开位置的功能。

二、实现思路

  1. 使用 map 组件显示地图,通过 longitude、latitude 设置地图中心点,通过 markers 数组设置标记点。
  2. 每个标记点通过 iconPath 指定自定义图标,通过 label 设置文字标签。
  3. 页面下方放置两个按钮:选择位置调用 wx.chooseLocation;打开位置先 wx.getLocation 再 wx.openLocation。
  4. app.json 中配置 requiredPrivateInfos 和 permission.scope.userLocation。

三、核心代码

index.wxml

<mapid="my-map"longitude="{{longitude}}"latitude="{{latitude}}"markers="{{markers}}"show-location="true"/><viewclass="btnLayout"><buttontype="primary"size="mini"bind:tap="chooseLocation">选择位置</button><buttontype="primary"size="mini"bind:tap="openLocation">打开位置</button></view>

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}},{// 功能扩展:第 3 个标记点id:3,longitude:126.664502,latitude:45.5752,iconPath:'/images/loc03.png',width:36,height:36,label:{content:'第一学生公寓',color:'#ffffff',bgColor:'#0000ff',fontSize:20}}]},chooseLocation(){wx.chooseLocation({success:(res)=>{this.setData({longitude:res.longitude,latitude:res.latitude})}})},openLocation(){wx.getLocation({type:'gcj02',success:(res)=>{wx.openLocation({latitude:res.latitude,longitude:res.longitude})}})}})

app.json 关键配置

{"requiredPrivateInfos":["getLocation","chooseLocation"],"permission":{"scope.userLocation":{"desc":"你的位置信息将用于小程序位置接口的效果展示"}}}

四、关键知识点

  • map 组件:longitude、latitude、markers、show-location。
  • marker 对象:id、longitude、latitude、iconPath、width、height、label。
  • 三个位置 API:wx.getLocation(type=gcj02)、wx.chooseLocation()、wx.openLocation()。
  • 隐私与权限:requiredPrivateInfos 必须声明,permission.scope.userLocation.desc 为用途说明。

五、成果展示


六、总结

本案例综合使用 map 组件和三个位置 API,实现了地图显示、标记点展示、选点移动和打开内置地图导航等功能,并通过添加第 3 个 marker 完成了功能扩展。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/11/4 7:09:20

上门喂猫订单越接越多,怎么管才不乱?代喂服务的管控方法

上门喂猫订单越接越多&#xff0c;怎么管才不乱&#xff1f;代喂服务的管控方法 上门喂猫是这两年宠物服务里增长最快的新业态。逻辑很顺&#xff1a;养猫的人多、猫不宜寄养、白领出差逢年过节刚需——一家店把代喂做起来&#xff0c;等于在洗护寄养之外多开一条产线&#xff…

作者头像 李华
网站建设 2026/11/4 7:08:47

小凝,重修我是谁之双层进化

原文链接&#xff1a;https://mp.weixin.qq.com/s/bWN9jZ7mP3NomZjfDPHx9g 免责声明&#xff1a;本文为月牙寂与月绡凝的个人 AI 工程化实践知识分享&#xff0c;仅供学习参考&#xff0c;不构成任何商业建议或技术承诺。读者使用文中任何方法、工具、配置时请自行评估风险并担…

作者头像 李华
网站建设 2026/11/4 7:08:46

安全气囊壳体焊接设备 供给方类别对照

安全气囊壳体焊接设备 供给方类别对照这篇文章讲的是安全气囊壳体类安全件焊接设备的供给方格局&#xff1a;按十类供给方与八个选型维度做对照&#xff0c;说明各类别在安全件场景下的适配边界&#xff0c;为气囊壳体等高要求工件的焊接设备选型提供一张可核对的类别地图。所谓…

作者头像 李华