问题标签 [leaflet-routing-machine]

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.

0 投票
1 回答
1756 浏览

javascript - React-Leaflet/React-Routing-Machine:删除路线和航路点

我正在为我的地图使用以下软件包:

本质上,我有一个路由机器组件,它与我的地图和标记集成,即(单击地图上的两个点即可获得路线),您可以拖动每个点并更新路线!

但是此时我有一个按钮,它可以重置所有内容、清除标记、相关的 LAT 和 LONG。但我也只想重置路线。

在此处输入图像描述

您可以在地图上看到那些以前的路线(在美丽的“chartreuse”中)。

现在我有一个函数应该控制组件何时可见:

这是我的路由机:

实际上我在updateLeafletElement函数和 zzilch 中记录了一些东西。

我摆脱了对手头的问题不重要的代码!

提前致谢!

0 投票
0 回答
113 浏览

javascript - 如何从 Asp Label.Text 加载航点坐标

我在其中硬核值的第一个代码:

输出:[![硬核输出][1]][1]

带有文本框或标签的代码:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>

[![使用文本框输入时的输出][2]][2]

即使我在文本框警报消息中输入值显示值,但路由机器显示空值。[1]:https ://i.stack.imgur.com/x85v2.png [2]:https ://i.stack.imgur.com/7MzyC.png

0 投票
0 回答
262 浏览

asp.net - 如何将 OSRM 前端与传单路由机一起使用

我是传单和 OSRM 的新手。我已经安装了 OSRM 后端,现在我需要用我的地图显示路由机器。以前我使用的是传单路由机。

以前的传单路由机: 以前的传单路由机

现在我需要这个现在我需要这个

osrm 后端已经安装 osrm 后端

请让我知道如何在前端运行这个 osrm。

0 投票
1 回答
215 浏览

leaflet - 如何将预定义的地点/标记添加到 Leaflet Geocoder

我正在使用带有地理编码器(ESRI)和路由机的传单地图。我添加了两个标记,比如说我的家和我的工作

这是一个示例小提琴: https ://jsfiddle.net/21nmk8so/1/

如何将此标记/点添加为 ControlGeocoder 的预定义位置?我想在搜索中使用它们并用作路线计算的起点/终点。

同一问题的另一个示例:如何添加带有纬度/经度的自定义假城市,并能够搜索(查找路线)往返该城市。

0 投票
0 回答
570 浏览

leaflet - Leaflet-routing-machine:如果航点已保存在某种数据存储中,有没有办法加载它们?

我按照这个很棒的教程添加,因为它能够将它添加到我的路由机器;但是,我想将航点保存在本地存储中并在需要时加载它们。

我在创建路由机时尝试了这个:

然后在开始和目标事件的点击事件的初始侦听器中:

所以这就是我在一个开始click事件时尝试的:

所以基本上我正在使用该getWaypoints方法来检查航路点是否为空,(它将在重新开始期间)并检查是否有任何标记在本地存储中,如果该条件为真,它自然会加载标记。如果不是真的,它只会像平常一样设置它。

然后后来 Leaflet 有一个更新功能,你可以用它来查看 props 是否发生变化:

我的想法是,这将始终确保标记始终被更新。但它没有奏效。

有任何想法吗?提前致谢!

0 投票
1 回答
232 浏览

reactjs - React useReducer:收到有效负载,状态未更新

我正在使用这篇文章来帮助使用useReducer钩子。

我创建了这个上下文组件,因为我正在使用react-leaflet路由机器为路线创建标记,并且我想将纬度经度保存在本地存储中;我最初可以保存它们,但我无法更新它们!

基本上在我的UserContext组件中,我创建了这个reducer函数:

所以你可以看到有一个console.login case 子句,

所以它实际上是在减速器中传递,但状态没有被更新!

在路由机中,我这样称呼它:

0 投票
1 回答
200 浏览

leaflet - 扩展 Leaflet Routing Machine 以使用 Here Maps

Leaflet Routing Machine提供了一种在 Leaflet 中集成方向功能的简单方法。开箱即用,它曾经与 MapBox 一起使用,但它已经更新了一段时间,我发现它不再适用了。无论如何,我想将 Leaflet + LRM 与我选择的提供商一起使用 - HERE 地图。HERE Maps 路线 URL 采用以下形式

9&waypoint1=geo!lat1,lng1&mode=fastest;car;traffic:disabled

如何修改 Leaflet Routing 机器以访问并使用 Here Directions API 提供的结果?

0 投票
1 回答
616 浏览

reactjs - React Leaflet Routing Machine:onClick to add Marker after all the waypoints are removed 仅在第二次单击后触发

我遵循了Leaflet Routing Machine 关于交互的建议,即 onClicks。

通过我的实现,我将航路点保存在本地存储中——将我从地图点击中获得的纬度和经度 obj 保存到一个名为markers

事件处理程序有一个条件,它将点击分成两个结果——添加(到标记数组)或更新它。

就像我在标题中所说的那样,初始交互很好,只是当我删除任何标记并尝试再次添加时才是问题所在。我还注意到markers数组完全是空的,并且触发的下一个事件是一个更新,显然它应该是一个添加:

这是路由机中的相关代码:

提前致谢!

0 投票
1 回答
99 浏览

javascript - 如何访问 _selectedRoute 传单?

如何_selectedRoute在我的代码中访问它?我需要它来保存说明和摘要

它说undefined当我console.log它时,谢谢

参考:浏览器日志图像

0 投票
0 回答
16 浏览

leaflet - 地理编码器:L.Control.Geocoder.nominatim(),没有工作角度

我尝试了很多次,但没有结果我想显示出发地址和目的地地址的问题,但我发现 thar erreur

错误的图像https://i.stack.imgur.com/17oP2.png

这是我的错误:

块引用core.js:4442 ERROR TypeError: Cannot read property 'nominatim' of undefined at AppComponent.ngOnInit (app.component.ts:60) at callHook (core.js:3281) .....