微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如果使用 Leaflet.markercluster,Leaflet VectorGrid 交互性不起作用

如何解决如果使用 Leaflet.markercluster,Leaflet VectorGrid 交互性不起作用

我正在尝试将 Leaflet VectorGrid interactivity 选项用于点击和鼠标事件:

const vectorGrid = L.vectorGrid.slicer(geoJsonDocument,{
    rendererFactory: L.canvas.tile,vectorTileLayerStyles: {
      sliced: geoJSONStyle(false)
    },maxZoom: 22,indexMaxZoom: 5,// max zoom in the initial tile index
    interactive: true
  });

  vectorGrid.on("mouSEOver",function (e) {
    console.log("mouSEOver");
  });

  vectorGrid.on("click",function (e) {
    console.log("click");
  });

但是,如果使用 Leaflet.markercluster,则交互性不起作用。

我创建了一个 codesandbox

如果您评论 map.addLayer(mcg);,则交互有效。

解决方法

传单贡献者的回答:

您正在遭受 github.com/Leaflet/Leaflet/issues/4135 - 设置 更喜欢Canvas 到false 解决了这个问题。问题不是 矢量网格与标记集群交互,而是矢量特征 在 L.Canvas(标记簇多边形)中与任何其他交互式 层(矢量网格图块

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。