Mapbox GL方向插件隐藏搜索源目标框

时间:2016-04-13 18:03:45

标签: mapbox mapbox-gl

我在我的应用程序中使用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]]);

 });

2 个答案:

答案 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);。尝试删除它,看看会发生什么。

希望这有帮助!