我在我的应用程序中使用Mapbox GL方向插件,我在地图加载时设置原点,并在用户点击地图上的任何位置时设置驱动目的地。我现在正在尝试删除左上角的搜索源/目的地框,但经过广泛的研究无法弄清楚如何这样做,有人可以通过告诉我该怎么做来帮助吗?感谢。
我在以下应用中使用的代码:
var map = new mapboxgl.Map({
container: 'map',
style: 'mapbox://styles/mapbox/streets-v8',
center: [userCoordinates.coords.longitude, userCoordinates.coords.latitude],
zoom: 15
});
var directions = new mapboxgl.Directions({
unit: 'metric',
profile: 'driving'
});
map.addControl(directions);
directions.setOrigin([userCoordinates.coords.longitude, userCoordinates.coords.latitude]);
map.on('click', function(e) {
var features = map.queryRenderedFeatures(e.point, { layers: ['gsLayer'] });
if (!features.length) {
return;
}
var feature = features[0];
directions.setDestination([feature.geometry.coordinates[0], feature.geometry.coordinates[1]]);
});
答案 0 :(得分:1)
由于没有文档,我无法解决这个问题,但最后我通读了mapbox-gl-directions.js文件,我想我发现了如何做到这一点。
在您的示例中,您应该嵌入这样的控件以删除源/目标框:
var directions = new mapboxgl.Directions({
unit: 'metric',
profile:'driving',
container:'directions', // Specify an element thats not the map container.
// UI controls
controls: {
inputs: false,
instructions: true
}
});
map.addControl(directions);
答案 1 :(得分:0)
我假设您正在使用Mapbox GL Javascript,并且this example看起来map.addControl(new mapboxgl.Directions());
正在添加控制器。在你给你的代码中你也有map.addControl(directions);
。尝试删除它,看看会发生什么。
希望这有帮助!