Leaflet 反应传单:缩放后缩放标记

Leaflet 反应传单:缩放后缩放标记,leaflet,react-leaflet,Leaflet,React Leaflet,我试图在CRS地图(特别是带有首字母缩写的圆形化身)上实现标记与地图的缩放比例(根据缩放比例,标记会显得更大或更小,而不是保持相同的大小),并且在实现性能方面遇到了相当大的困难 我尝试了两种不同的化身组件(仍然不确定哪种是正确的解决方案): 组件内部有一个简单、永久的工具提示(此组件很方便,因为它可以自动缩放) 通过向它传递一个divIcon,我使用边界半径将其设置为一个圆。这一次我必须根据每个缩放级别调整I缩放,这就引出了我的下一个问题: 标签问题是如何获取当前缩放状态的上下文: 使用地

我试图在CRS地图(特别是带有首字母缩写的圆形化身)上实现标记与地图的缩放比例(根据缩放比例,标记会显得更大或更小,而不是保持相同的大小),并且在实现性能方面遇到了相当大的困难

我尝试了两种不同的化身组件(仍然不确定哪种是正确的解决方案):

  • 组件内部有一个简单、永久的工具提示(此组件很方便,因为它可以自动缩放)
  • 通过向它传递一个
    divIcon
    ,我使用边界半径将其设置为一个圆。这一次我必须根据每个缩放级别调整
    I缩放
    ,这就引出了我的下一个问题:
标签问题是如何获取当前缩放状态的上下文:

  • 使用地图上的
    地图
    onzoomanim:
    事件抓取缩放并将其传递给化身
    • 这会导致每个层的渲染时间(例如,平铺、覆盖、工具提示)之间存在相当大的延迟,这是一个糟糕的用户体验
  • 使用带传单的
    HOC来获取传单上下文。
    
    • 尽管缩放深入嵌套在
      传单
      道具中,但该组件不会在缩放更改时更新

是否还有我没有的传单/反应传单可以达到预期的效果?

Hmm。您可以尝试使用div图标和类来更改内容的大小。该示例依赖于类的SCS生成,但您可以手动将它们全部写出。@jbccollins,感谢演示。无法让您的建议发挥作用,但以下是我的目标:(为可怜的SCS道歉-不太熟悉它,因此有具体的类名)。放大时,可以看到工具提示不像圆那样具有平滑过渡-它在对新的缩放做出反应时大小会跳跃-这不是一个好的用户体验。在我的项目中,我在缩放期间有条件地渲染文本,因此它会立即消失。这也不理想,但还没有找到更好的解决方案。@IanJanicki,你最终是如何解决这个问题的?@ralien我最终使用了React传单的ImageOverlay组件,并利用这个包为它提供了一个由dataurl组成的SVG:这允许我向imageHmm提供自定义参数。您可以尝试使用div图标和类来更改内容的大小。该示例依赖于类的SCS生成,但您可以手动将它们全部写出。@jbccollins,感谢演示。无法让您的建议发挥作用,但以下是我的目标:(为可怜的SCS道歉-不太熟悉它,因此有具体的类名)。放大时,可以看到工具提示不像圆那样具有平滑过渡-它在对新的缩放做出反应时大小会跳跃-这不是一个好的用户体验。在我的项目中,我在缩放期间有条件地渲染文本,因此它会立即消失。这也不理想,但还没有找到更好的解决方案。@IanJanicki,你最终是如何解决这个问题的?@ralien我最终使用了React传单的ImageOverlay组件,并利用这个包为它提供了一个由dataurl组成的SVG:这允许我向图像提供自定义参数