添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
性感的西装  ·  iOS 更新日志 | ...·  4 天前    · 
淡定的蚂蚁  ·  跨平台开发 | Taro 文档·  1 周前    · 
飘逸的感冒药  ·  uni-app官网·  2 周前    · 
呐喊的皮蛋  ·  概述 | Taro 文档·  1 月前    · 
风流倜傥的烈马  ·  map | uni-app官网·  6 月前    · 
调皮的杯子  ·  r语言excel操作 - CSDN文库·  2 月前    · 
果断的乌冬面  ·  经典案例 - ...·  9 月前    · 
乐观的青蛙  ·  TFF – Turkiye Futbol ...·  9 月前    · 
GitHub
uniCloud Web控制台
插件市场
ask问答社区
uniAD
uni统计
代码仓库: Gitee GitHub uni-app的uni-im交流群:
官方QQ交流群
群35:713420817(2000人已满) 群34:530305531(2000人已满) 群33:498071674(2000人已满) 群32:166188631(2000人已满) 群31:567471669(2000人已满) 群30:371046920(2000人已满) 群29:202965481(2000人已满) 群28:166188776(2000人已满) 群27:811363410(2000人已满) 群26:147867597(2000人已满) 群25:165297000(2000人已满) 群24:672494800(2000人已满) 群23:599958679(2000人已满) 群22:687186952(2000人已满) 群21:717019120(2000人已满) 群20:165796402(2000人已满) 群19:165657124(2000人已满) 群18:698592271(2000人已满) 群17:951348804(2000人已满) 群16:719211033(2000人已满) 群15:516984120(2000人已满) 群14:465953250(2000人已满) 群13:699478442(2000人已满) 群12:884860657(2000人已满) 群11:296811328(2000人已满) 群10:959059626(2000人已满) 群9:775128777(2000人已满) 群8:695442854(2000人已满) 群7:942061423(2000人已满) 群6:697264024(2000人已满) 群5:731951419(2000人已满) 群4:942702595(2000人已满) 群3:773794803(2000人已满) 群2:901474938(2000人已满) 群1:531031261(2000人已满)
关注微信公众号

# map

地图组件。

地图组件用于展示地图,而定位API只是获取坐标,请勿混淆两者。

平台差异说明

App H5 微信小程序 支付宝小程序 百度小程序 抖音小程序、飞书小程序 QQ小程序 快应用 360小程序 快手小程序 京东小程序
1.63+ 1.9.0+ x

地图服务商说明

地图服务商 App H5 微信小程序
高德 3.6.0+
Google 3.4+ 仅nvue页面 3.2.10+
腾讯

属性说明

属性名 类型 默认值 说明 平台差异说明
longitude Number 中心经度
latitude Number 中心纬度
scale Number 16 缩放级别,取值范围为3-20 高德地图缩放比例与微信小程序不同
theme String normal 主题(satellite 或 normal)只在初始化时有效,不能动态变更(仅Android支持) 京东小程序
min-scale Number 3 最小缩放级别 App-nvue 3.1.0+、微信小程序2.13+
max-scale Number 20 最大缩放级别 App-nvue 3.1.0+、微信小程序2.13+
layer-style Number/String 1 个性化地图 App-nvue 3.1.0+、微信小程序2.13+
markers Array 标记点
polyline Array 路线 飞书小程序不支持
circles Array
controls Array 控件
include-points Array 缩放视野以包含所有给定的坐标点 App-nvue 2.1.5+、微信小程序、H5、百度小程序、支付宝小程序、京东小程序
enable-3D Boolean false 是否显示3D楼块 App-nvue 2.1.5+、微信小程序2.3.0
show-compass Boolean false 是否显示指南针 App-nvue 2.1.5+、微信小程序2.3.0
enable-zoom Boolean true 是否支持缩放 App-nvue 2.1.5+、微信小程序2.3.0
enable-scroll Boolean true 是否支持拖动 App-nvue 2.1.5+、微信小程序2.3.0
enable-rotate Boolean false 是否支持旋转 App-nvue 2.1.5+、微信小程序2.3.0
rotate Number 0 旋转角度(范围0-360)地图正北和设备 y 轴角度的夹角 微信小程序2.5.0
enable-overlooking Boolean false 是否开启俯视 App-nvue 2.1.5+、微信小程序2.3.0
enable-satellite Boolean false 是否开启卫星图 App-nvue 2.1.5+、微信小程序2.7.0
enable-traffic Boolean false 是否开启实时路况 App-nvue 2.1.5+、微信小程序2.7.0
enable-poi Boolean false 是否展示 POI 点 App-nvue 3.1.0+
enable-building Boolean false 是否展示建筑物 App-nvue 3.1.0+ 支持 ( 废除原enable-3D属性 高德地图默认开启建筑物就是3D无法设置 )
show-location Boolean 显示带有方向的当前定位点 微信小程序、H5、百度小程序、支付宝小程序、京东小程序
polygons(支付宝为: polygon) Array. <polygon> 多边形 App-nvue 2.1.5+、App-vue 3.4.3+、H5 3.4.3+、微信小程序、百度小程序、支付宝小程序
enable-indoorMap Boolean false 是否展示室内地图 App-nvue 3.1.0+
@markertap EventHandle 点击标记点时触发,e.detail = {markerId} App-nvue 2.3.3+、H5、微信小程序、支付宝小程序 (App和H5平台需要指定 marker 对象属性 id)
@labeltap EventHandle 点击label时触发,e.detail = {markerId} 微信小程序2.9.0
@callouttap EventHandle 点击标记点对应的气泡时触发,e.detail = {markerId}
@controltap EventHandle 点击控件时触发,e.detail = {controlId}
@regionchange EventHandle 视野发生变化时触发 微信小程序、H5、百度小程序、支付宝小程序、京东小程序
@tap EventHandle 点击地图时触发; App-nvue、微信小程序2.9支持返回经纬度
@updated EventHandle 在地图渲染更新完成时触发 微信小程序、H5、百度小程序
@anchorpointtap EventHandle 点击定位标时触发,e.detail = {longitude, latitude} App-nvue 3.1.0+、微信小程序2.13+
@poitap EventHandle 点击地图poi点时触发,e.detail = {name, longitude, latitude} 微信小程序2.3.0+

注意

  • <map> 组件的宽/高推荐写直接量,比如:750rpx,不要设置百分比值。
  • 谷歌地图使用 wgs84 坐标,其他地图使用 gcj02 坐标,用错坐标类型会显示偏移。
  • App平台 layer-style 属性需要在地图服务商后台创建,值设置为高德后台申请的字符串, 详情
  • H5 端高德地图 include-points 属性仅支持 2 个坐标点,表示显示范围的西南角和东北角。

# 近期新增功能

  1. 支持点聚合,适用于marker过多场景。
  2. 支持彩虹蚯蚓线,常用于路线规划场景。
  3. 覆盖物支持调整与其它地图元素的压盖关系。
  4. 支持marker(小车)平移动画,适用于轨迹回放场景。

markers

标记点用于在地图上显示标记的位置

属性 说明 类型 必填 备注 平台差异说明
id 标记点id Number marker点击事件回调会返回此id。建议为每个marker设置上Number类型id,保证更新marker时有更好的性能。最大限制9位数
latitude 纬度 Number 浮点数,范围 -90 ~ 90
longitude 经度 Number 浮点数,范围 -180 ~ 180
title 标注点名 String 点击时显示,callout存在时将被忽略 App-nvue 2.1.5+、微信小程序、H5、支付宝小程序、百度小程序、京东小程序
iconPath 显示的图标 String 项目目录下的图片路径,支持相对路径写法,以'/'开头则表示相对小程序根目录;也支持临时路径
rotate 旋转角度 Number 顺时针旋转的角度,范围 0 ~ 360,默认为 0 App-nvue 2.1.5+、微信小程序、支付宝小程序、百度小程序、京东小程序
alpha 标注的透明度 Number 默认1,无透明,范围 0 ~ 1 App-nvue 2.1.5+、微信小程序、支付宝小程序、百度小程序、京东小程序
width 标注图标宽度 Number 默认为图片实际宽度 App-nvue 2.1.5+、微信小程序、H5、支付宝小程序、百度小程序、京东小程序
height 标注图标高度 Number 默认为图片实际高度 App-nvue 2.1.5+、微信小程序、H5、支付宝小程序、百度小程序、京东小程序
callout 自定义标记点上方的气泡窗口 Object 支持的属性见下表,可识别换行符。 App-nvue 2.1.5+、微信小程序、支付宝小程序、百度小程序、京东小程序
label 为标记点旁边增加标签 Object 支持的属性见下表,可识别换行符。 App-nvue 2.1.5+、微信小程序、H5、App、百度小程序、支付宝小程序
anchor 经纬度在标注图标的锚点,默认底边中点 Object {x, y},x表示横向(0-1),y表示竖向(0-1)。{x: .5, y: 1} 表示底边中点 App-nvue 2.1.5+、微信小程序、H5、百度小程序、京东小程序
clusterId 自定义点聚合簇效果时使用 Number App-nvue 3.1.0+、微信小程序
customCallout 自定义气泡窗口 Object App-nvue 2.1.5+、微信小程序、支付宝小程序
aria-label 无障碍访问,(属性)元素的额外描述 String App-nvue 3.1.0+、微信小程序
joinCluster 是否参与点聚合 Boolean 如果指定点聚合 此选项值必须设置为true,才会生效 App-nvue 3.1.0+、微信小程序

marker 上的气泡 callout

属性 说明 类型 平台差异说明
content 文本 String App-nvue 2.1.5+、微信小程序、H5、百度小程序、京东小程序、支付宝小程序
color 文本颜色 String App-nvue 2.1.5+、微信小程序、H5、百度小程序、京东小程序
fontSize 文字大小 Number App-nvue 2.1.5+、微信小程序、H5、百度小程序、京东小程序
borderRadius callout边框圆角 Number App-nvue 2.1.5+、微信小程序、H5、百度小程序、京东小程序
borderWidth 边框宽度 Number 微信小程序、京东小程序、百度小程序
borderColor 边框颜色 String 微信小程序、京东小程序、百度小程序
bgColor 背景色 String App-nvue 2.1.5+、微信小程序、H5、百度小程序、京东小程序
padding 文本边缘留白 Number App-nvue 2.1.5+、微信小程序、H5、百度小程序、京东小程序
display 'BYCLICK':点击显示; 'ALWAYS':常显 String App-nvue 2.1.5+、微信小程序、H5、百度小程序、京东小程序
textAlign 文本对齐方式。有效值: left, right, center String App-nvue 2.1.5+、微信小程序、百度小程序、京东小程序
anchorX 横向偏移量,向右为正数 Number 微信小程序2.11.0
anchorY 纵向偏移量,向下为正数 Number 微信小程序2.11.0

marker 上的标签 label

属性 说明 类型 平台差异说明
content 文本 String
color 文本颜色 String App-nvue 2.1.5+、微信小程序、H5、百度小程序、支付宝小程序
fontSize 文字大小 Number App-nvue 2.1.5+、微信小程序、H5、百度小程序、支付宝小程序
x label的坐标,原点是 marker 对应的经纬度 Number H5、百度小程序
y label的坐标,原点是 marker 对应的经纬度 Number H5、百度小程序
anchorX label的坐标,原点是 marker 对应的经纬度 Number App-nvue 2.1.5+、微信小程序
anchorY label的坐标,原点是 marker 对应的经纬度 Number App-nvue 2.1.5+、微信小程序
borderWidth 边框宽度 Number 微信小程序、百度小程序
borderColor 边框颜色 String 微信小程序、百度小程序
borderRadius 边框圆角 Number App-nvue 2.1.5+、微信小程序、百度小程序、支付宝小程序
bgColor 背景色 String App-nvue 2.1.5+、微信小程序、百度小程序、支付宝小程序
padding 文本边缘留白 Number App-nvue 2.1.5+、微信小程序、百度小程序、支付宝小程序
textAlign 文本对齐方式。有效值: left, right, center String App-nvue 2.1.5+、微信小程序、百度小程序
aria-label 无障碍访问,(属性)元素的额外描述 String App-nvue 3.1.0+、微信小程序

# 点聚合

当地图上需要展示的标记点 marker 过多时,可能会导致界面上 marker 出现压盖,展示不全,并导致整体性能变差。针对此类问题,推出点聚合能力。

使用流程如下:

MapContext.initMarkerCluster 对聚合点进行初始化配置(可选); MapContext.addMarkers 指定参与聚合的 marker; MapContext.on('markerClusterCreate', callback) 触发时,通过 MapContext.addMarkers 更新聚合簇的样式 (可选); MapContext.removeMarkers 移除参与聚合的 marker;

polyline

指定一系列坐标点,从数组第一项连线至最后一项

属性 说明 类型 必填 备注 平台差异说明
points 经纬度数组 Array [{latitude: 0, longitude: 0}]
color 线的颜色 String 8位十六进制表示,后两位表示alpha值,如:#0000AA
width 线的宽度 Number
dottedLine 是否虚线 Boolean 默认false App-nvue 2.1.5+、微信小程序、H5、百度小程序、支付宝小程序、京东小程序
arrowLine 带箭头的线 Boolean 默认false,微信小程序开发者工具暂不支持该属性 App-nvue 2.1.5+、微信小程序、百度小程序、京东小程序
arrowIconPath 更换箭头图标 String 在arrowLine为true时生效 App-nvue 2.1.5+、微信小程序、百度小程序、京东小程序
borderColor 线的边框颜色 String 微信小程序、H5、百度小程序、京东小程序
borderWidth 线的厚度 Number 微信小程序、H5、百度小程序、京东小程序
colorList 彩虹线 Array 存在时忽略 color 值 App-nvue 3.1.0+、微信小程序
level 压盖关系
abovelabels 显示在所有 POI 之上(默认)
abovebuildings 显示在楼块之上 POI 之下
aboveroads 显示在所有 POI 之上
String 微信小程序

注意事项

  • App-nvue 当 arrowLine 为 true 时,显示的是带箭头的图片拼接的线 color 值会被忽略,替换箭头图片的方法 参考文档

polygon
指定一系列坐标点,根据 points 坐标数据生成闭合多边形

属性 说明 类型 必填 备注
points 经纬度数组 array [{latitude: 0, longitude: 0}]
strokeWidth 描边的宽度 Number
strokeColor 描边的颜色 String 十六进制
fillColor 填充颜色 String 十六进制
zIndex 设置多边形 Z 轴数值 Number
level 压盖关系
abovelabels 显示在所有 POI 之上(默认)
abovebuildings 显示在楼块之上 POI 之下
aboveroads 显示在所有 POI 之上
String false 微信小程序

circles

在地图上显示圆

属性 说明 类型 必填 备注
latitude 纬度 Number 浮点数,范围 -90 ~ 90
longitude 经度 Number 浮点数,范围 -180 ~ 180
color 描边的颜色 String 8位十六进制表示,后两位表示alpha值,如:#000000AA;#00000为十六进制
fillColor 填充颜色 String 8位十六进制表示,后两位表示alpha值,如:#000000AA;#00000为十六进制
radius 半径 Number
strokeWidth 描边的宽度 Number
level 压盖关系
abovelabels 显示在所有 POI 之上(默认)
abovebuildings 显示在楼块之上 POI 之下
aboveroads 显示在所有 POI 之上
String false 微信小程序

controls

在地图上显示控件,控件不随着地图移动

属性 说明 类型 必填 备注
id 控件id Number 在控件点击事件回调会返回此id
position 控件在地图的位置 Object 控件相对地图位置
iconPath 显示的图标 String 项目目录下的图片路径,支持相对路径写法,以'/'开头则表示相对项目根目录;也支持临时路径
clickable 是否可点击 Boolean 默认不可点击

position

属性 说明 类型 必填 备注
left 距离地图的左边界多远 Number 默认为0
top 距离地图的上边界多远 Number 默认为0
width 控件宽度 Number 默认为图片宽度
height 控件高度 Number 默认为图片高度

地图组件的经纬度必填,如果不填经纬度则默认值是北京的经纬度。

示例 查看示例

Template

Script

<template>
		<view class="page-body">
			<view class="page-section page-section-gap">
				<map style="width: 100%; height: 300px;" :latitude="latitude" :longitude="longitude" :markers="covers">
				</map>
			</view>
		</view>
	</view>
</template>