使用删除的标记和搜索查询初始化mapBox地图

使用删除的标记和搜索查询初始化mapBox地图,mapbox,mapbox-gl-js,mapbox-marker,Mapbox,Mapbox Gl Js,Mapbox Marker,我使用地理编码设置了mapbox,这样用户就可以在“搜索”框中键入内容,一旦选择了一个位置,就会在该位置放置一个标记。我希望在地图上已经放置了一个标记,并且在页面加载时已经在搜索框中输入了一个搜索词(我有一个用户选择位置的设置,如果他们返回编辑页面,我希望他们能够看到他们以前选择的位置)。这可能吗 我的初始化代码是: initMap(lat, lng) { const mapboxgl = require('mapbox-gl/dist/mapbox-gl.js')

我使用地理编码设置了mapbox,这样用户就可以在“搜索”框中键入内容,一旦选择了一个位置,就会在该位置放置一个标记。我希望在地图上已经放置了一个标记,并且在页面加载时已经在搜索框中输入了一个搜索词(我有一个用户选择位置的设置,如果他们返回编辑页面,我希望他们能够看到他们以前选择的位置)。这可能吗

我的初始化代码是:

    initMap(lat, lng) {
      const mapboxgl = require('mapbox-gl/dist/mapbox-gl.js')
      mapboxgl.accessToken =
        'access_token'
      const map = new mapboxgl.Map({
        container: 'map',
        style: 'mapbox://styles/mapbox/streets-v11?optimize=true',
        center: [lat, lng],
        zoom: 8,
        attributionControl: false,
      })
      const geocoder = new MapboxGeocoder({
        accessToken: mapboxgl.accessToken,
        mapboxgl: mapboxgl,
      })
      map.addControl(geocoder)
      map.on('load', () => {
        geocoder.on('result', (result) => {
          const inputResult = result.result
          const coordinates = inputResult.geometry.coordinates
          const placeName = inputResult.place_name
          const lng = coordinates[0]
          const lat = coordinates[1]
          this.location = placeName
          this.latLng = [lat, lng]
        })
      })
    },

可以指定已显示在“搜索”输入框中的查询,并通过与和一起使用自动将标记添加到地图中。例如,以下代码在输入字段中显示文本,并在地图加载时显示“高驻车档”的标记:

var map = new mapboxgl.Map({
  container: 'map',
  style: 'mapbox://styles/mapbox/streets-v11',
  center: [-79.4512, 43.6568],
  zoom: 13
});

var geocoder = new MapboxGeocoder({
  accessToken: mapboxgl.accessToken,
  mapboxgl: mapboxgl
});

map.addControl(geocoder);

map.on('load', () => {
  geocoder.query('High Park');    
});

好极了谢谢你的帮助。