无法识别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),
包含您的API密钥以能够观看演示
以上是关于无法识别MapBox传单路由设备的主要内容,如果未能解决你的问题,请参考以下文章