给地图加上自定义封面图与路线:wechat-weapp-mapdemo之covers与polyline完全指南

📅 2026/8/27 16:57:22
给地图加上自定义封面图与路线:wechat-weapp-mapdemo之covers与polyline完全指南
给地图加上自定义封面图与路线wechat-weapp-mapdemo之covers与polyline完全指南【免费下载链接】wechat-weapp-mapdemo微信小程序开发mapdemo地图导航、marker标注项目地址: https://gitcode.com/gh_mirrors/we/wechat-weapp-mapdemowechat-weapp-mapdemo 是一个开源的微信小程序地图开发 Demo覆盖地图导航、marker 标注等核心场景。本文将带你用 10 分钟快速上手两大高频进阶特性用covers 给地图添加自定义封面图、用polyline 绘制路线从 Demo 运行到参数避坑一次讲清。30 秒理解covers 与 polyline 是什么在微信map组件中这两组属性是地图“装修”的主力属性作用典型场景covers在地图指定经纬度位置叠加自定义图片封面可旋转店铺招牌图、活动海报、方向指示polyline在地图上绘制一段折线路线可控制颜色、宽度、是否虚线骑行/步行路线、配送路径、区域边界一句话区分covers 是“贴图片”polyline 是“画路线”两者都基于经纬度定位互相独立、可以叠加使用。快速运行 wechat-weapp-mapdemo 地图 Demo第 1 步获取项目源码git clone https://gitcode.com/gh_mirrors/we/wechat-weapp-mapdemo第 2 步打开微信开发者工具选择「导入项目」选择克隆下来的目录即可无需 npm install。第 3 步熟悉页面结构。四个页面各司其职本文涉及的就是后两个pages/location/location.js「导航」页演示covers封面图与wx.openLocation路线导航pages/map/map.js「地图」页演示 markers 批量标注与polyline路线数据结构如何用 covers 给地图添加自定义封面图3 步搞定第 1 步准备图片。把封面图放入小程序本地目录如image/iconPath使用相对路径引用。第 2 步在页面 data 中定义 covers 数组。参考 pages/location/location.js 中的写法covers: [{ latitude: 23.099794, longitude: 113.324520, iconPath: ../../images/wechart.png, rotate: 10 }, { latitude: 23.099298, longitude: 113.324129, iconPath: ../../images/wechart.png, rotate: 90 }]每个封面对象支持 4 个常用字段latitude/longitude封面图锚点经纬度iconPath图片路径本地相对路径即可rotate顺时针旋转角度0–360第二个封面就旋转了 90°直观展示效果第 3 步绑定到 map 组件。打开 pages/location/location.wxml关键只有一处map ... markers{{markers}} covers{{covers}} scale16/map把covers{{covers}}加到map标签上图片就会精准“钉”在指定坐标上缩放地图时图片始终锚定原地。 小技巧rotate很适合做“指向箭头”式封面配合不同旋转角度形成方向指示。如何用 polyline 在地图上绘制自定义路线3 步搞定第 1 步准备坐标点。polyline 需要一串坐标点顺序即连线顺序。可以来自接口、用户轨迹或手写固定点。第 2 步定义 polyline 数组。pages/map/map.js 中保留了官方示例的数据结构当前被注释取消注释即可生效polyline: [{ points: [{ longitude: 113.3245211, latitude: 23.10229 }, { longitude: 113.324520, latitude: 23.21229 }], color: #FF0000DD, width: 2, dottedLine: true }]4 个核心参数速查points坐标点数组至少 2 个点才能连线color线条颜色支持带透明度的 8 位色值如#FF0000DDwidth线宽像素推荐 2–5dottedLine是否绘制虚线true常用于规划中的路线第 3 步绑定到 map 组件。在 pages/map/map.wxml 的map标签上追加polyline{{polyline}}即可与 markers、covers 同时生效互不冲突。如上图配合wx.openLocation还能调起完整导航页起点、终点、多方案路线与耗时距离一应俱全适合“查路线 一键导航”组合玩法。新手常见 5 个踩坑清单坐标系要用 gcj02Demo 中wx.getLocation指定type: gcj02否则路线会整体偏移数百米。iconPath 路径别写错cover 图片建议用相对页面或根目录的相对路径路径错误时图片静默不显示控制台无报错。points 顺序即路线方向坐标点按“从起点到终点”排列顺序乱了路线会来回折返。颜色带透明度才好看#FF0000DD这类 8 位色值能让路线半透明不遮挡底图道路信息。scale 影响观察效果演示页用scale16近距离查看 covers用scale5看全览路线调试时多切换缩放级别。小结wechat-weapp-mapdemo 用最少的代码演示了微信地图的两个高频能力covers负责在任意坐标叠加可旋转的自定义封面图polyline负责绘制可控制颜色、宽度与虚线的路线。两个特性都只需「data 里定义数组 → map 标签上绑定属性」两步配合 pages/location/location.json、app.json 中的页面配置即可快速搭出导航标注类小程序。建议动手把 map.js 中注释的 polyline 打开跑通你自己的第一条路线 ️【免费下载链接】wechat-weapp-mapdemo微信小程序开发mapdemo地图导航、marker标注项目地址: https://gitcode.com/gh_mirrors/we/wechat-weapp-mapdemo创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考