无法识别MapBox传单路由设备

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了无法识别MapBox传单路由设备相关的知识,希望对你有一定的参考价值。

我正在建立一个带有地图的小型站点。我需要步行进行路由,因此我考虑从osrmv1测试服务器切换到MapBox进行测试,因为osrm测试服务器仅提供驾驶。

我尝试这样更改路由:

const options = { profile: 'mapbox/walking' };
const mapRouter = L.Routing.control({
  router: L.Routing.Mapbox( mapBoxAPIKey, options),
  waypoints: [
    L.latLng([this.currentLatlong[0], this.currentLatlong[1]]),
    L.latLng([this.pointToGoLatlong[0], this.pointToGoLatlong[1]])
  ],
  fitSelectedRoutes : false,
  routeWhileDragging: false,
  collapsible: true,
  lineOptions: {
    styles: [{
      color: 'green',
      opacity: 1,
      weight: 3
    }]
  },
});

mapRouter.addTo(this.map);

但行:

路由器:L.Routing.Mapbox(mapBoxKey,选项)

无法识别L.Routing的参数Mapbox

我想念什么?

谢谢

答案

由于mapbox API发生了更改,更具体地说,是由于对行走配置文件进行了更新以提高其精度,因此它将返回polyline6编码,此问题的出现如在github issue上为Mapbox工作的Daniel Patterson所述。

您需要使用L.Routing.mapbox而不是L.Routing.Mapbox,并将选项更改为:

const options = { profile: "mapbox/walking", polylinePrecision: 6 };

还请使用以下内容,以避免在Typescript编译时出现错误:

router: (L.Routing as any).mapbox("your api key", options),

Demo

包含您的API密钥以能够观看演示

以上是关于无法识别MapBox传单路由设备的主要内容,如果未能解决你的问题,请参考以下文章

我可以使用传单插件和mapbox gl js吗?

未经授权的访问 - mapbox:服务器响应状态为401

如何免费使用传单地图?

传单无法正确缩放到移动设备

片段上的 Mapbox 膨胀视图

Mapbox户外活动-Mapbox Studio的背景和旧样式标签