此类表示地图上的文本标注。

构造函数

  • 创建文本标注实例

    参数类型说明
    contentstring标注内容,支持HTML
    opts 可选LabelOptions可选参数
    属性类型说明
    anchorControlAnchor文本标注的锚点位置
    enableClickingboolean是否响应点击事件
    enableMassClearboolean是否在调用 map.clearOverlays() 时清除此覆盖物
    offsetSize文本标注的位置偏移值
    positionPoint文本标注的地理位置
    stylesobject文本标注容器的 CSS 样式,键值对形式(如 { color: '#f00', fontSize: '14px' })
    widthnumber文本标注的宽度(像素),0 表示按内容自适应

    返回值 Label

    示例代码1

    const label = new BMap.Label('Hello BMap', {
    position: new BMap.Point(116.404, 39.915),
    offset: new BMap.Size(20, -10),
    });
    map.addOverlay(label);

方法

  • 添加事件监听函数

    参数类型说明
    eventK事件名称
    handler(e: LabelEventMap[K]) => void事件处理函数

    返回值 void

    示例代码1

    label.addEventListener('click', (e) => {
    console.log('label clicked', e);
    });
  • 禁止覆盖物在 map.clearOverlays() 方法中被清除

    返回值 void

  • 抽象生命周期方法,当地图状态发生变化时调用,对覆盖物进行绘制。

    仅在自定义覆盖物时需要实现此方法。内置覆盖物已在内部实现,用户无需调用也无需重写。

    返回值 void

  • 允许覆盖物在 map.clearOverlays() 方法中被清除

    返回值 void

  • 返回文本标注的内容

    返回值 string

  • 返回覆盖物所在的地图实例

    返回值 Map

  • 返回文本标注的偏移值

    返回值 Size

  • 返回文本标注的地理坐标

    返回值 Point

  • 返回文本标注的标题

    返回值 string

  • 隐藏覆盖物。对于自定义覆盖物,此方法会自动将initialize方法返回的HTML元素样式的display属性设置为none

    返回值 void

  • 抽象生命周期方法,用于初始化覆盖物,当调用map.addOverlay时,API内部将调用此方法。

    仅在自定义覆盖物时需要实现此方法,并返回覆盖物对应的HTML元素。 内置覆盖物(MarkerPolylinePolygon 等)已在内部实现,用户无需调用也无需重写。

    参数类型说明
    mapMap

    返回值 HTMLElement

    示例代码2

    class MyOverlay extends BMap.Overlay {
    initialize(map: BMap.Map) {
    const div = document.createElement('div');
    div.textContent = '自定义覆盖物';
    map.getPanes().markerPane.appendChild(div);
    return div;
    }
    draw() {}
    }
  • 判断覆盖物是否可见

    返回值 boolean

  • 移除事件监听函数

    参数类型说明
    eventK事件名称
    handler(e: LabelEventMap[K]) => void事件处理函数

    返回值 void

    示例代码3

    const handler = (e: any) => { console.log(e); };
    label.addEventListener('click', handler);
    label.removeEventListener('click', handler);
  • 设置文本标注的锚点位置

    参数类型说明
    anchorControlAnchor锚点枚举值

    返回值 void

    示例代码1

    label.setAnchor(BMAP_ANCHOR_BOTTOM_CENTER);
    
  • 设置文本标注的内容,支持HTML

    参数类型说明
    contentstring标注内容

    返回值 void

    示例代码1

    label.setContent('<strong>新内容</strong>');
    
  • 设置文本标注的偏移值

    参数类型说明
    offsetSize偏移量

    返回值 void

    示例代码1

    label.setOffset(new BMap.Size(10, -5));
    
  • 设置文本标注的透明度

    参数类型说明
    opacitynumber透明度,取值范围 0 - 1

    返回值 void

  • 设置文本标注的地理坐标,仅当通过 map.addOverlay() 添加时有效

    参数类型说明
    positionPoint地理坐标

    返回值 void

    示例代码1

    label.setPosition(new BMap.Point(116.410, 39.920));
    
  • 批量设置文本标注容器的 CSS 样式

    参数类型说明
    stylesobjectCSS 样式键值对

    返回值 void

    示例代码1

    label.setStyles({ color: 'red', fontSize: '14px' });
    
  • 设置文本标注的标题,鼠标悬停时显示

    参数类型说明
    titlestring标题文字

    返回值 void

    示例代码1

    label.setTitle('标注标题');
    
  • 设置覆盖物的 zIndex

    参数类型说明
    zIndexnumber层叠顺序值

    返回值 void

    示例代码1

    label.setZIndex(100);
    
  • 显示覆盖物。对于自定义覆盖物,此方法会自动将initialize方法返回的HTML元素样式的display属性设置为空

    返回值 void