Angular 9 MapboxGeocoder добавить маркер не работает - PullRequest
0 голосов
/ 19 апреля 2020

Я создаю проект с angular 9 и mapbox gl. У меня проблема с геокодером, все отлично работает при поиске места, но я пытаюсь установить точку после результата геокодера следующим образом: https://docs.mapbox.com/mapbox-gl-js/example/point-from-geocoder-result/ Я делаю то же самое, но маркер не появляется.

Это мой код, где я начинаю свою карту и добавляю геокодер:

    import {Component, OnInit} from '@angular/core';
    import {FormBuilder, FormGroup} from '@angular/forms';
    import {UserService} from '../../../user/service/user.service';    
    import * as MapboxGeocoder from '@mapbox/mapbox-gl-geocoder';
    import * as mapboxgl from 'mapbox-gl/dist/mapbox-gl';
    import {environment} from '../../../../../environments/environment';


    @Component({
      selector: 'app-add-sport-ad',
      templateUrl: './add-sport-ad.component.html',
      styleUrls: ['./add-sport-ad.component.scss']
    })

    export class AddSportAdComponent implements OnInit {
      form: FormGroup;
      map: mapboxgl.Map;
      style = 'mapbox://styles/mapbox/streets-v11';
      lat = 37.75;
      lng = -122.41;

      constructor(private fb: FormBuilder, public userService: UserService) {
      }

      ngOnInit() {
        this.initForm();
        mapboxgl.accessToken = environment.mapbox.accessToken;

        this.map = new mapboxgl.Map({
          container: 'map',
          style: this.style,
          zoom: 13,
          center: [this.lng, this.lat]
        });

        const geocoder = new MapboxGeocoder({
          accessToken: mapboxgl.accessToken,
          marker: {
            color: 'orange'
          },
          mapboxgl
        });

        this.map.addControl(geocoder);
        this.map.addControl(new mapboxgl.NavigationControl());
      }
    }

Если кто-то может мне помочь, большое спасибо:)

...