百度地图开放平台
更新时间: 2026/08/19 09:54

Marker 用于图标点标注,Label 用于文本标注。建议将覆盖物保存为可空变量,重复添加前先 remove();创建时使用局部常量,配置完成后再赋值给页面变量,避免 UTS Smart Cast 限制。

Marker
let marker: Marker | null = null
const item = new Marker()
item.setPosition({ lat: 39.92235, lng: 116.380338 })
item.icon = '/static/icon_marker.png'
item.addToMap('demoMap')
marker = item

Marker 支持 updatePosition、updateIcon 和 remove。Label 支持文本、字号、颜色、边框、旋转和位置更新。图片资源建议使用 /static 开头的项目静态路径,addToMap 的地图 ID 必须与组件 ID 一致。

Label 示例
const label = new Label()
label.setPosition({ lat: 39.915, lng: 116.404 })
label.text = '百度地图'
label.fontSize = 28; label.fontColor = '#1F2329'
label.addToMap('demoMap')
label.updateText('新的文本')

覆盖物点击时通过 MapOverlay.id 与覆盖物 getId() 比较,避免点击一个覆盖物却误更新另一个对象。

上一篇

方法交互

下一篇

Polyline、Polygon与Circle
本篇文章对您是否有帮助?