问题标签 [react-leaflet-v3]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
leaflet - 如何从 mapcontainer 中删除 geojson 组件
嗨,我想在 map 函数中添加一个选择下拉菜单,这样,当它的值发生变化时,MyData 组件层会被删除/移除,并在其位置呈现一个新层。那可能吗?
leaflet - TileLayer、Geojson 之间的自定义窗格中的 Leaflet zIndex
我正在使用允许订单决策的界面组织几个层。例如我有 3 层:
- WMS层,顺序:3
- Geojson层:顺序2
- WMS层,顺序:1
我可以使用 zIndex 属性订购 WMS 图层。然而,Geojson 层也无法适应这些。
Leaflet.Pane 概念 + 自定义窗格是我尝试过的,这有助于将自定义图层移动到让我们说一切。但是在这个自定义窗格中,我无法为这个 Geojson (svg) 图层分配订单。
在此示例中,tileLayers 和 geoJSON 在同一个自定义窗格中。在此窗格中,我想根据属性(例如 zIndex)切换图层的顺序。但我找不到如何使用 TileLayer <> Geojson 组合来做到这一点。
reactjs - React Leaflet 中 MarkerClusters 的自定义图标
我正在尝试为我的标记簇(而不是常规的圆形簇)实现自定义图标。我参考了链接并实现如下代码所示: https ://www.npmjs.com/package/react-leaflet-markercluster
但我不断得到:
TypeError:无法读取未定义的属性(读取“divIcon”)
有没有办法使用自定义图像作为标记集群的图标?另外,有没有办法改变用于显示集群内标记数量的文本颜色?任何帮助将不胜感激。
leaflet - WMSTileLayer 事件处理程序在反应传单中不起作用
根据下面的代码必须工作的反应传单文档。还是我做错了什么?建议将不胜感激。提前致谢
reactjs - React-leaflet 性能问题,防止 GeoJSON 重新渲染
我有以下问题:
我想使用react-leaflet
'sGeoJSON
组件创建一个简单的等值线图。我还想要一个工具提示,显示悬停在GeoJSON
功能上的值。问题是性能。可以在此处找到 CodePen 示例:https ://codepen.io/timester-the-typescripter/pen/gOXGKOY
我将事件处理程序附加到每个GeoJSON
功能,并在我的“主”组件中设置一个状态变量,该组件保存当前悬停区域的值。
const [selected, setSelected] = React.useState(null);
我的工具提示依赖于该状态变量来显示其值。因为每个鼠标悬停事件都会导致主组件状态发生变化,所以 GeoJSON 组件一直被重新渲染。这在 CodePen 示例中不是一个大问题,但对于完整的世界地图来说,这是不幸的。
我假设状态更改会导致这种情况,因为如果我注释掉 2setSelected
行(CodePen 中的第 55 行和第 67 行),重新渲染(对 的调用createGeoJSON
)停止,并且事件处理程序运行得更快,因为分析器图片显示以下。
我尝试了许多解决方案都没有成功。例如,我认为我无法记住 GeoJSON 组件,因为 Tooltip 必须是它的子组件,这取决于主组件的状态。
将来,我想根据悬停状态变量(例如图例等)添加更多组件。也许该变量也会比简单的数字更复杂一些。
我在这里有什么选择?我对此有另一个 stackowerflow 问题,但后来我没有完全理解这个问题,所以它不是超级专注。我正考虑用 Angular 重写它。我发现 react 和 react-leaflet 使用起来非常愉快,直到出现这个问题。
javascript - 如何从 useState 数组中获取对象?
我有一个表,其中一行有一个复选框,我有一个称为椭圆的对象。
savedEllipse
单击复选框后,我需要使椭圆对象进入数组(使用 useState)。
在我所做的测试中,我看到椭圆对象确实进入了数组,但是现在我必须在取消选中复选框后将其从数组中取出,而且我无法弄清楚如何使用对象类型,例如我在这里的椭圆对象。
你可以看到我对 setChekcedState 做了同样的事情,它确保复选框的名称进出 checkState 数组,而且效果很好,但是当我尝试用同样的方式对椭圆对象执行此操作时,那没起效。
你有想法吗?
我(在 StackOverflow 中)发现了一些与此接近的问题,但没有一个问题涉及这个特定问题,所以不要混淆
这是代码:
reactjs - 将函数传递给 React-Leaflet 中的 divIcon
我是 React-Leaflet 的新手(使用 v3),所以如果我遗漏了一些明显的东西,这就是原因。对于我当前的应用程序,我需要能够在地图上旋转标记,这会打开也应该旋转相同角度的弹出窗口。对于一般标记旋转,我使用了传单标记旋转插件。这不适用于内部放置的弹出组件。
然后,我当前的方法是为我通过传单 divIcon 自定义的弹出窗口使用旋转标记。现在的问题是,我需要在弹出窗口中调用特定功能的按钮。由于 divIcon 的内容是通过 html 而不是 JSX 定义的,因此我还没有设法传递函数。
在按钮点击我得到:
Uncaught SyntaxError: Unexpected end of input
甚至可以将函数传递给 divIcon 吗?如果没有,是否有人对如何创建带有按钮的自定义可旋转弹出窗口有其他想法?
react-leaflet - 动态创建折线的问题
我有一个问题,我正在根据各种用户行程创建动态折线。我根据给定行程的用户创建了一个 latlong 位置数组,但是,当我为 PolyLine 设置位置时,它似乎绘制了多条线。我可以创建一个具有相同坐标的 const 全局数组并使用它,一切正常。例如,如果我设置 linePositions=myRouteTest 它会很好地加载线路。有什么想法吗。
这是代码:
这是一个示例 json: