升级到 1.0.3 时的传单标签

标签 leaflet leaflet-label

我尝试使用传单标签,并且在几个页面上都成功了。我想使用相同的方法在另一个页面上显示标签,但它回复了一条我不理解的晦涩的技术消息:

Uncaught TypeError: Cannot read property 'call' of undefined
    at e.whenReady (leaflet.js:6)
    at e.addLayer (leaflet.js:6)
    at e.showLabel (leaflet.label-src.js:538)
    at e.showLabel (leaflet.label-src.js:287)
    at e._onMarkerAdd (leaflet.label-src.js:383)
    at e.fire (leaflet.js:5)
    at e._layerAdd (leaflet.js:6)
    at e.whenReady (leaflet.js:6)
    at e.addLayer (leaflet.js:6)
    at e.onAdd (leaflet.js:7)

经过大量研究,我发现 Leaflet.label 在 Leaflet 1.0.3 中已被弃用,这是有道理的,因为我们在其他页面中使用旧的传单版本,标签显示正确,但在较新的传单版本上它使 map 崩溃。 docs说我应该使用 bindTooltip 而不是 bindLabel,但我不知道如何。我尝试在标记上使用一些内容来调用它,但它没有出现在 map 上,并且我没有在生成的结构中找到它。

所以,我的问题如下:如何在 Leaflet 1.0.3 中使用标签,该标签将绑定(bind)到标记并在平移/缩放的情况下进行调整?

最佳答案

Tooltip现在确实是 Leaflet 主库的直接一部分。

请注意,默认情况下它仅在鼠标悬停时出现,但您可以使用 permanent让它始终可见的选项。

marker.bindTooltip("Some tooltip content", {
  permanent: true
});

示例:http://playground-leaflet.rhcloud.com/tiqo/1/edit?html,output

关于升级到 1.0.3 时的传单标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43780990/

相关文章:

javascript - 有没有办法在绘制之前获取标签的宽度和高度?

R 传单 map - 根据所选图层组更改图例

javascript - 3.x 中 Component 中的 MapContainer 添加 onClick

javascript - 选择传单标记

javascript - 在几个功能上分享很多要点的最佳方式?

javascript - 为所有缩放级别绘制一个恒定大小的圆 leaflet.js

javascript - 如何使用leaflet.label绑定(bind)多个标签?